[dovecot/core] c4cd55: lib-sql: Explicitly specify used *_vfuncs methods ...
GitHub
noreply at github.com
Wed Sep 27 14:00:15 EEST 2017
Branch: refs/heads/master-2.2
Home: https://github.com/dovecot/core
Commit: c4cd55ca3a9d433dd70548e34137c2ba04e56b96
https://github.com/dovecot/core/commit/c4cd55ca3a9d433dd70548e34137c2ba04e56b96
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-sql/driver-cassandra.c
M src/lib-sql/driver-mysql.c
M src/lib-sql/driver-pgsql.c
M src/lib-sql/driver-sqlite.c
M src/lib-sql/driver-sqlpool.c
A src/lib-sql/driver-test.c
Log Message:
-----------
lib-sql: Explicitly specify used *_vfuncs methods for drivers.
This allows adding more methods without modifying all the existing drivers.
Commit: 6ebfc2ec5ac544b5532429147b6e4e6ce9246eb0
https://github.com/dovecot/core/commit/6ebfc2ec5ac544b5532429147b6e4e6ce9246eb0
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-sql/sql-api-private.h
M src/lib-sql/sql-api.c
M src/lib-sql/sql-api.h
Log Message:
-----------
lib-sql: Add support for prepared SQL statements.
This initial implementation doesn't use prepared statements in drivers, but
simply generates the query string internally.
Commit: c90266497bd04d48900df858673adceb66c6fad3
https://github.com/dovecot/core/commit/c90266497bd04d48900df858673adceb66c6fad3
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-sql.c
Log Message:
-----------
dict-sql: Change "uint" type to mean 64bit instead of 32bit integer.
This is likely what is usually wanted (especially in e.g. quotas).
If someone actually wants it to be restricted to 32bit, we could add
uint32 later on.
Commit: a8bff174c9ea78c603cdb68e5b766bb31ee1a95e
https://github.com/dovecot/core/commit/a8bff174c9ea78c603cdb68e5b766bb31ee1a95e
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-memcached-ascii.c
M src/lib-dict/dict-memcached.c
M src/lib-dict/dict-redis.c
M src/lib-dict/dict-sql.c
M src/lib-dict/dict.c
M src/plugins/dict-ldap/dict-ldap.c
Log Message:
-----------
lib-dict: Moved/removed explicit stack frames in dict drivers.
Added them back to dict_set/unset/atomic_inc() in dict.c. Others are
unlikely to be called many times.
Commit: 80b78400bf4d70fbba280ab0a9aa28e6425628ba
https://github.com/dovecot/core/commit/80b78400bf4d70fbba280ab0a9aa28e6425628ba
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-sql.c
Log Message:
-----------
dict-sql: Remove dict_sql_build_query.inc
It's no longer useful with the current code.
Commit: f6334b9c9de17b424b0cd16e1bf9e7cb3d5f79f8
https://github.com/dovecot/core/commit/f6334b9c9de17b424b0cd16e1bf9e7cb3d5f79f8
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-sql.c
Log Message:
-----------
dict-sql: Initial change to use sql_statement API
sql_statement_bind_*() will be followed by later changes.
Commit: 9b762025a544923f6597813eb2983bd5be8cb112
https://github.com/dovecot/core/commit/9b762025a544923f6597813eb2983bd5be8cb112
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-sql.c
Log Message:
-----------
dict-sql: Use sql_statement_set_timestamp() instead of adding it to query
Commit: 99c5459505ac3eea5d955d604b00c5582ee4bd0a
https://github.com/dovecot/core/commit/99c5459505ac3eea5d955d604b00c5582ee4bd0a
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-sql-settings.c
M src/lib-dict/dict-sql-settings.h
M src/lib-dict/dict-sql.c
Log Message:
-----------
dict-sql: Add signed "int" type
Commit: fa7369ee9759017a2751691d13126ce454e3677c
https://github.com/dovecot/core/commit/fa7369ee9759017a2751691d13126ce454e3677c
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-sql.c
Log Message:
-----------
dict-sql: Use sql_statement_bind_*()
Commit: 98d322947c4aadece45d8c561b824255b777901b
https://github.com/dovecot/core/commit/98d322947c4aadece45d8c561b824255b777901b
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-sql.c
Log Message:
-----------
dict-sql: Cleanup - Remove unnecessary code
The values are explicitly added to params. sql_dict_update_query() doesn't
add them again. Since the "diff" parameter is already a long long type,
this avoids unnecessary conversion to string and back.
Commit: 1b47042298f56d6b2a6b4d5cf5a68930e1c3a964
https://github.com/dovecot/core/commit/1b47042298f56d6b2a6b4d5cf5a68930e1c3a964
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-sql.c
Log Message:
-----------
dict-sql: Cleanup - change query generator functions to return statement
Instead of query+params. This is in preparation for the following changes.
Commit: 727f9016919f6793b86315cd164c6febb09bf2d8
https://github.com/dovecot/core/commit/727f9016919f6793b86315cd164c6febb09bf2d8
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-sql.c
Log Message:
-----------
dict-sql: Flush pending atomic_inc on set, and pending set on atomic_inc
Commit: 4ea91541fd811dd726d1e285f8b0f16a8ec5e5c6
https://github.com/dovecot/core/commit/4ea91541fd811dd726d1e285f8b0f16a8ec5e5c6
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-dict/dict-sql.c
Log Message:
-----------
dict-sql: Use prepared statements
Create a hash table of query template -> prepared statement and fill it out
as needed. This could have been done some alternative ways that wouldn't
require building the string first, but this should still be fast enough and
much easier to implement.
Commit: c5a23ba5ec920f32d61cc0b2b6270a8f8700ba19
https://github.com/dovecot/core/commit/c5a23ba5ec920f32d61cc0b2b6270a8f8700ba19
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-sql/driver-cassandra.c
Log Message:
-----------
cassandra: sql_transaction_commit_s() - Don't allow multi-query transactions
They were already denied for asynchronous commits. Also the synchronous
commits aren't actually used anywhere, so this shouldn't break anything.
Commit: f1f0d80ad6c7029bb93d618e97d40bcd4bea76af
https://github.com/dovecot/core/commit/f1f0d80ad6c7029bb93d618e97d40bcd4bea76af
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-sql/driver-cassandra.c
Log Message:
-----------
cassandra: sql_transaction_commit_s() - Set query_type correctly
The queries were all sent with READ type instead of WRITE/DELETE. This
meant they were using potentially wrong consistency values. Although
synchronous commits aren't actually used anywhere, so this practically
this doesn't fix anything right now.
Commit: 6679cc8ff663849dd41ef524a4aeea94b9c05455
https://github.com/dovecot/core/commit/6679cc8ff663849dd41ef524a4aeea94b9c05455
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-sql/driver-cassandra.c
Log Message:
-----------
cassandra: sql_transaction_commit*() cleanup - handle multiple query failures earlier
This makes the handling same for the sync and async method. It also
simplifies code for the following commits.
Commit: 424b15e8d13013ca9b3966d09303cf8efea9b9d6
https://github.com/dovecot/core/commit/424b15e8d13013ca9b3966d09303cf8efea9b9d6
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-sql/driver-cassandra.c
Log Message:
-----------
cassandra: Cleanup - Create statement earlier
Simplifies the following changes
Commit: f90f6a287acb134e11b01e46fa772f1917cbfb0e
https://github.com/dovecot/core/commit/f90f6a287acb134e11b01e46fa772f1917cbfb0e
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-sql/driver-cassandra.c
Log Message:
-----------
cassandra: Add support for prepared statements
Commit: fbe89fbf9cb27665556bc948a08741acce95f8e8
https://github.com/dovecot/core/commit/fbe89fbf9cb27665556bc948a08741acce95f8e8
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-sql/driver-cassandra.c
Log Message:
-----------
cassandra: Disable prepared statements with protocol v3 and older
Commit: 65ffbfb571092bd5a5dc4b116ab186da5804b657
https://github.com/dovecot/core/commit/65ffbfb571092bd5a5dc4b116ab186da5804b657
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-sql/driver-cassandra.c
Log Message:
-----------
cassandra: Fix paged queries to work again
When continuing the result, consistency was reset to 0 (=ANY), which caused
the queries to fail. There's no need to initialize the statement again when
continuing it. Also set result->consistency to be correct mainly for
debugging purposes.
Commit: 8cd3ade635cb96469cc2047e311ae31c82974893
https://github.com/dovecot/core/commit/8cd3ade635cb96469cc2047e311ae31c82974893
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-09-27 (Wed, 27 Sep 2017)
Changed paths:
M src/lib-sql/driver-cassandra.c
Log Message:
-----------
cassandra: Timestamp should be in microseconds, not milliseconds
Compare: https://github.com/dovecot/core/compare/f46b4fbb830e...8cd3ade635cb
More information about the dovecot-cvs
mailing list