fix: restore mysql docker build
This commit is contained in:
@@ -33,14 +33,10 @@ ENV NO_DB_INIT=true
|
||||
ENV SAMPLE_DATA=
|
||||
ENV DEFAULT_COUNTRY_CODE=US
|
||||
|
||||
# DB connection is provided at deploy time via secret-backed env var. No default value.
|
||||
ENV MYSQL_DSN=
|
||||
ENV STORE_USE_ADAPTER=mysql
|
||||
ENV REDIS_ADDR=
|
||||
ENV REDIS_USERNAME=
|
||||
ENV REDIS_PASSWORD=
|
||||
ENV REDIS_DB=0
|
||||
ENV REDIS_KEY_PREFIX=im
|
||||
ENV REDIS_DIAL_TIMEOUT_MS=2000
|
||||
ENV REDIS_READ_TIMEOUT_MS=2000
|
||||
ENV REDIS_WRITE_TIMEOUT_MS=2000
|
||||
@@ -72,13 +68,6 @@ ENV SERVER_STATUS_PATH=''
|
||||
ENV ACC_GC_ENABLED=false
|
||||
ENV PLUGIN_PYTHON_CHAT_BOT_ENABLED=false
|
||||
|
||||
# Secrets: intentionally NO default values. Must be injected at deploy time.
|
||||
# An empty/missing value fails loudly at startup rather than silently falling
|
||||
# back to Tinode's publicly-known demo keys.
|
||||
ENV API_KEY_SALT=
|
||||
ENV AUTH_TOKEN_KEY=
|
||||
ENV UID_ENCRYPTION_KEY=
|
||||
|
||||
RUN apk add --no-cache ca-certificates bash grep
|
||||
|
||||
WORKDIR /opt/tinode
|
||||
|
||||
@@ -12,6 +12,8 @@ if [ ! -z "$EXT_CONFIG" ] ; then
|
||||
else
|
||||
CONFIG=working.config
|
||||
|
||||
: "${REDIS_KEY_PREFIX:=im}"
|
||||
|
||||
# Remove the old config.
|
||||
rm -f working.config
|
||||
|
||||
|
||||
@@ -3704,8 +3704,8 @@ func (a *adapter) MessageGetAll(topic string, forUser t.Uid, opts *t.QueryOpt) (
|
||||
// Get ranges of deleted messages
|
||||
func (a *adapter) MessageGetDeleted(topic string, forUser t.Uid, opts *t.QueryOpt) ([]t.DelMessage, error) {
|
||||
var limit = a.maxResults
|
||||
var lower = 0
|
||||
var upper = 1<<31 - 1
|
||||
var lower int64 = 0
|
||||
var upper int64 = 1<<31 - 1
|
||||
|
||||
if opts != nil {
|
||||
if opts.Since > 0 {
|
||||
@@ -3738,8 +3738,8 @@ func (a *adapter) MessageGetDeleted(topic string, forUser t.Uid, opts *t.QueryOp
|
||||
Topic string
|
||||
Deletedfor int64
|
||||
Delid int
|
||||
Low int
|
||||
Hi int
|
||||
Low int64
|
||||
Hi int64
|
||||
}
|
||||
var dmsgs []t.DelMessage
|
||||
var dmsg t.DelMessage
|
||||
@@ -3817,7 +3817,7 @@ func messageDeleteList(tx *sqlx.Tx, topic string, toDel *t.DelMessage) error {
|
||||
}
|
||||
|
||||
// Find the actual IDs still present in the database.
|
||||
var seqIDs []int
|
||||
var seqIDs []int64
|
||||
err = tx.Select(&seqIDs, "SELECT seqid FROM im_messages AS m WHERE "+where, args...)
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -3829,7 +3829,7 @@ func messageDeleteList(tx *sqlx.Tx, topic string, toDel *t.DelMessage) error {
|
||||
}
|
||||
|
||||
// Recalculate the actual ranges to delete.
|
||||
sort.Ints(seqIDs)
|
||||
sort.Slice(seqIDs, func(i, j int) bool { return seqIDs[i] < seqIDs[j] })
|
||||
delRanges = t.SliceToRanges(seqIDs)
|
||||
|
||||
// Compose a new query with the new ranges.
|
||||
|
||||
@@ -1118,14 +1118,14 @@ func tenantMessageDeleteList(tx *sqlx.Tx, tenantID t.TenantID, topic string, toD
|
||||
where += " AND m.createdat>?"
|
||||
args = append(args, newerThan)
|
||||
}
|
||||
var seqIDs []int
|
||||
var seqIDs []int64
|
||||
if err := tx.Select(&seqIDs, "SELECT seqid FROM im_messages AS m WHERE "+where, args...); err != nil {
|
||||
return err
|
||||
}
|
||||
if len(seqIDs) == 0 {
|
||||
return nil
|
||||
}
|
||||
sort.Ints(seqIDs)
|
||||
sort.Slice(seqIDs, func(i, j int) bool { return seqIDs[i] < seqIDs[j] })
|
||||
delRanges = t.SliceToRanges(seqIDs)
|
||||
rSQL, rArgs := common.RangesToSql(delRanges)
|
||||
where = "m.tenant_id=? AND m.topic=? AND m.seqid " + rSQL
|
||||
@@ -1178,14 +1178,14 @@ func groupMessageDeleteList(tx *sqlx.Tx, topic string, toDel *t.DelMessage) erro
|
||||
where += " AND m.created_at>?"
|
||||
args = append(args, newerThan)
|
||||
}
|
||||
var seqIDs []int
|
||||
var seqIDs []int64
|
||||
if err = tx.Select(&seqIDs, "SELECT seqid FROM im_group_messages AS m WHERE "+where, args...); err != nil {
|
||||
return err
|
||||
}
|
||||
if len(seqIDs) == 0 {
|
||||
return nil
|
||||
}
|
||||
sort.Ints(seqIDs)
|
||||
sort.Slice(seqIDs, func(i, j int) bool { return seqIDs[i] < seqIDs[j] })
|
||||
delRanges = t.SliceToRanges(seqIDs)
|
||||
rSQL, rArgs := common.RangesToSql(delRanges)
|
||||
where = "m.topic=? AND m.seqid " + rSQL
|
||||
@@ -5617,7 +5617,9 @@ func (a *adapter) TenantMessageGetDeleted(id t.TenantID, topic string, uid t.Uid
|
||||
}
|
||||
return deleted, err
|
||||
}
|
||||
limit, lower, upper := a.maxResults, 0, 1<<31-1
|
||||
limit := a.maxResults
|
||||
var lower int64 = 0
|
||||
var upper int64 = 1<<31 - 1
|
||||
if opts != nil {
|
||||
if opts.Since > 0 {
|
||||
lower = opts.Since
|
||||
@@ -5648,8 +5650,8 @@ func (a *adapter) TenantMessageGetDeleted(id t.TenantID, topic string, uid t.Uid
|
||||
Topic string
|
||||
Deletedfor int64
|
||||
Delid int
|
||||
Low int
|
||||
Hi int
|
||||
Low int64
|
||||
Hi int64
|
||||
}
|
||||
if err = rows.StructScan(&row); err != nil {
|
||||
return nil, err
|
||||
|
||||
+1
-1
@@ -277,7 +277,7 @@ func genDb(data *Data, p2pDel bool, tenantID types.TenantID) {
|
||||
}
|
||||
}
|
||||
|
||||
seqIds := map[string]int{}
|
||||
seqIds := map[string]int64{}
|
||||
now := types.TimeNow().Add(-time.Minute * 10)
|
||||
|
||||
messageCount := len(data.Messages)
|
||||
|
||||
Reference in New Issue
Block a user