Merge pull request #5039 from oranagra/rdb_dbsize_hint

64 bit RDB_OPCODE_RESIZEDB in rdb saving
This commit is contained in:
Salvatore Sanfilippo 2018-06-20 11:18:31 +02:00 committed by GitHub
commit c1e8240565
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1127,13 +1127,9 @@ int rdbSaveRio(rio *rdb, int *error, int flags, rdbSaveInfo *rsi) {
* is currently the largest type we are able to represent in RDB sizes. * is currently the largest type we are able to represent in RDB sizes.
* However this does not limit the actual size of the DB to load since * However this does not limit the actual size of the DB to load since
* these sizes are just hints to resize the hash tables. */ * these sizes are just hints to resize the hash tables. */
uint32_t db_size, expires_size; uint64_t db_size, expires_size;
db_size = (dictSize(db->dict) <= UINT32_MAX) ? db_size = dictSize(db->dict);
dictSize(db->dict) : expires_size = dictSize(db->expires);
UINT32_MAX;
expires_size = (dictSize(db->expires) <= UINT32_MAX) ?
dictSize(db->expires) :
UINT32_MAX;
if (rdbSaveType(rdb,RDB_OPCODE_RESIZEDB) == -1) goto werr; if (rdbSaveType(rdb,RDB_OPCODE_RESIZEDB) == -1) goto werr;
if (rdbSaveLen(rdb,db_size) == -1) goto werr; if (rdbSaveLen(rdb,db_size) == -1) goto werr;
if (rdbSaveLen(rdb,expires_size) == -1) goto werr; if (rdbSaveLen(rdb,expires_size) == -1) goto werr;