chore: fixes
This commit is contained in:
		
							parent
							
								
									aedc9245e5
								
							
						
					
					
						commit
						69755e14d2
					
				
							
								
								
									
										12
									
								
								feed.go
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								feed.go
									
									
									
									
									
								
							@ -563,7 +563,7 @@ func (n TwtTime) Value() (driver.Value, error) {
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func makeULID(twt types.Twt) ulid.ULID {
 | 
					func makeULID(twt types.Twt) ulid.ULID {
 | 
				
			||||||
	text := fmt.Appendf(nil, "%s\t%+l", cmp.Or(twt.Twter().HashingURI, twt.Twter().URI), twt)
 | 
						text := fmt.Appendf(nil, "%s\t%+l", twt.Twter().URI, twt)
 | 
				
			||||||
	u := ulid.ULID{}
 | 
						u := ulid.ULID{}
 | 
				
			||||||
	u.SetTime(ulid.Timestamp(twt.Created()))
 | 
						u.SetTime(ulid.Timestamp(twt.Created()))
 | 
				
			||||||
	u.SetEntropy(sha3.SumSHAKE128(text, 10))
 | 
						u.SetEntropy(sha3.SumSHAKE128(text, 10))
 | 
				
			||||||
@ -608,14 +608,18 @@ func refreshLastTwt(ctx context.Context, db db) error {
 | 
				
			|||||||
	qry := `
 | 
						qry := `
 | 
				
			||||||
	delete from last_twt_on;
 | 
						delete from last_twt_on;
 | 
				
			||||||
	insert into last_twt_on
 | 
						insert into last_twt_on
 | 
				
			||||||
		select
 | 
							select distinct
 | 
				
			||||||
			feed_id,
 | 
								feed_id,
 | 
				
			||||||
			max(strftime('%Y-%m-%dT%H:%M:%fZ', (substring(text, 1, instr(text, '	')-1)))) last_twt_on
 | 
								max(strftime('%Y-%m-%dT%H:%M:%fZ', (substring(text, 1, instr(text, '	')-1)))) last_twt_on
 | 
				
			||||||
		from twts
 | 
							from twts
 | 
				
			||||||
		group by feed_id
 | 
							group by feed_id
 | 
				
			||||||
	on conflict(feed_id) do update set last_twt_on = excluded.last_twt_on;
 | 
						on conflict(feed_id);
 | 
				
			||||||
	delete from twt_mentions;
 | 
						delete from twt_mentions;
 | 
				
			||||||
	insert into twt_mentions select ulid, unhex(replace(trim(value,'{}'),'-','')) feed_id from twts, json_each(mentions);
 | 
						insert into twt_mentions
 | 
				
			||||||
 | 
							select distinct
 | 
				
			||||||
 | 
								ulid,
 | 
				
			||||||
 | 
								unhex(replace(trim(value,'{}'),'-','')) feed_id
 | 
				
			||||||
 | 
							from twts, json_each(mentions);
 | 
				
			||||||
	`
 | 
						`
 | 
				
			||||||
	var err error
 | 
						var err error
 | 
				
			||||||
	for _, stmt := range strings.Split(qry, ";") {
 | 
						for _, stmt := range strings.Split(qry, ";") {
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										7
									
								
								http.go
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								http.go
									
									
									
									
									
								
							@ -38,8 +38,6 @@ var PREAMBLE_DOCS = func() lextwt.Comments {
 | 
				
			|||||||
	return add(c, "")
 | 
						return add(c, "")
 | 
				
			||||||
}()
 | 
					}()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func httpServer(ctx context.Context, app *appState) error {
 | 
					func httpServer(ctx context.Context, app *appState) error {
 | 
				
			||||||
	ctx, span := otel.Span(ctx)
 | 
						ctx, span := otel.Span(ctx)
 | 
				
			||||||
	defer span.End()
 | 
						defer span.End()
 | 
				
			||||||
@ -150,7 +148,6 @@ func httpServer(ctx context.Context, app *appState) error {
 | 
				
			|||||||
		args := make([]any, 0, 3)
 | 
							args := make([]any, 0, 3)
 | 
				
			||||||
		args = append(args, mention)
 | 
							args = append(args, mention)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
		limit := 100
 | 
							limit := 100
 | 
				
			||||||
		if v, ok := strconv.Atoi(r.URL.Query().Get("limit")); ok == nil {
 | 
							if v, ok := strconv.Atoi(r.URL.Query().Get("limit")); ok == nil {
 | 
				
			||||||
			limit = v
 | 
								limit = v
 | 
				
			||||||
@ -200,7 +197,6 @@ func httpServer(ctx context.Context, app *appState) error {
 | 
				
			|||||||
		`
 | 
							`
 | 
				
			||||||
		fmt.Println(qry, args)
 | 
							fmt.Println(qry, args)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
		rows, err := db.QueryContext(
 | 
							rows, err := db.QueryContext(
 | 
				
			||||||
			ctx, qry, args...,
 | 
								ctx, qry, args...,
 | 
				
			||||||
		)
 | 
							)
 | 
				
			||||||
@ -249,7 +245,6 @@ func httpServer(ctx context.Context, app *appState) error {
 | 
				
			|||||||
		reg.WriteTo(w)
 | 
							reg.WriteTo(w)
 | 
				
			||||||
	})
 | 
						})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
	http.HandleFunc("/api/plain/twt", func(w http.ResponseWriter, r *http.Request) {
 | 
						http.HandleFunc("/api/plain/twt", func(w http.ResponseWriter, r *http.Request) {
 | 
				
			||||||
		ctx, span := otel.Span(r.Context())
 | 
							ctx, span := otel.Span(r.Context())
 | 
				
			||||||
		defer span.End()
 | 
							defer span.End()
 | 
				
			||||||
@ -266,7 +261,7 @@ func httpServer(ctx context.Context, app *appState) error {
 | 
				
			|||||||
			offset = v
 | 
								offset = v
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		twts, end, err := func(uri string, limit int, offset int64, ) ([]types.Twt, int64, error) {
 | 
							twts, end, err := func(uri string, limit int, offset int64) ([]types.Twt, int64, error) {
 | 
				
			||||||
			args := make([]any, 0, 3)
 | 
								args := make([]any, 0, 3)
 | 
				
			||||||
			where := `where feed_id in (select feed_id from feeds where state != 'permanantly-dead')`
 | 
								where := `where feed_id in (select feed_id from feeds where state != 'permanantly-dead')`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										2
									
								
								init.sql
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								init.sql
									
									
									
									
									
								
							@ -35,7 +35,7 @@ CREATE INDEX if not exists twt_time on twts (ulid asc);
 | 
				
			|||||||
create table if not exists twt_mentions(
 | 
					create table if not exists twt_mentions(
 | 
				
			||||||
	feed_id blob,
 | 
						feed_id blob,
 | 
				
			||||||
	ulid blob,
 | 
						ulid blob,
 | 
				
			||||||
	primary key (feed_id)
 | 
						primary key (feed_id, ulid)
 | 
				
			||||||
); 
 | 
					); 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
CREATE INDEX if not exists twt_mention on twt_mentions (ulid asc);
 | 
					CREATE INDEX if not exists twt_mention on twt_mentions (ulid asc);
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user