History log of /6.0.3/forestdb/src/ (Results 1 - 25 of 900)
Revision (<<< Hide revision tags) (Show revision tags >>>)Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
c338e06e15-May-2019 sduvuru <sduvuru@gmail.com>

MB-34455: [BP 6.0.x / 5.5.x] Forestdb Segfault when getting reusable blocks
Backport of MB-34158

* Memory allocation failure is not handled in fdb_gather_stale_blocks.
Space allocati

MB-34455: [BP 6.0.x / 5.5.x] Forestdb Segfault when getting reusable blocks
Backport of MB-34158

* Memory allocation failure is not handled in fdb_gather_stale_blocks.
Space allocation is doubled as needed.
In a system with memory pressure the allocation can fail and can
cause a crash and corruption.
Check and handle the memory allocation failure cases.

Change-Id: Ia75e460a8a7b2663d77443c703ffd739eb9e18ff
Reviewed-on: http://review.couchbase.org/114418
Well-Formed: Build Bot <build@couchbase.com>
Reviewed-by: Srinath Duvuru <srinath.duvuru@couchbase.com>
Tested-by: Srinath Duvuru <srinath.duvuru@couchbase.com>

show more ...

e94d4c0a22-Aug-2019 sduvuru <sduvuru@gmail.com>

MB-35323: Forestdb: Renaming a compacted file can lead to the file
getting deleted

Backport of MB-35666

When a file is compacted the older file is deleted when there are
no

MB-35323: Forestdb: Renaming a compacted file can lead to the file
getting deleted

Backport of MB-35666

When a file is compacted the older file is deleted when there are
no references to it. This causes an issue when the compacted file is
renamed to the original file and then backed up. When the backed up
file is opened, the original file gets deleted as the name of the
previous file for the compacted file matches the renamed file.

The fix is to not remove the old file if it is in a different directory.

Change-Id: Icdbe7e9506cb932190e7adec30f9ad9881dd9d80
Reviewed-on: http://review.couchbase.org/113959
Well-Formed: Build Bot <build@couchbase.com>
Reviewed-by: Srinath Duvuru <srinath.duvuru@couchbase.com>
Tested-by: Srinath Duvuru <srinath.duvuru@couchbase.com>

show more ...

5623660309-Mar-2018 sduvuru <sduvuru@gmail.com>

MB-28014: Index node crashing with FDB error

When ForestDB encounters a corrupted buffer, currently it just asserts and crashes.
When indexer restarts, it again encounters the same corru

MB-28014: Index node crashing with FDB error

When ForestDB encounters a corrupted buffer, currently it just asserts and crashes.
When indexer restarts, it again encounters the same corrupted buffer and crashes again.
The indexer then has no way of determining the specific index file (forestDB file)
which is corrupt and disable the specific index.

This fix will handle corruption that is detected in the following way.
If buffer (on disk or on the buffer pool) is found to be corrupt,
the current dbheader will be marked as invalid and an error, FDB_RECOVERABLE_ERR,
will be returned. When the file is reopened, forestdb will move to the first valid
dbheader skipping the DBheaders that were marked as invalid. If the forestdb file open
encounters "num_keeping_headers", a config parameter, invalid dbheaders it will return
FDB_NONRECOVERABLE_ERR, a nonrecoverable error. The indexer will now be able to
determine the index is not recoverable and invalidate it so that it can be rebuilt.

The fix also has two functional tests which corrupt index and data pages and recovers
up to num_keeping_headers configuration value.

Change-Id: I181abface1ffe2e926597dccb883bb818b31d63a
Reviewed-on: http://review.couchbase.org/91777
Reviewed-by: Sundar Sridharan <sundar@couchbase.com>
Tested-by: Sundar Sridharan <sundar@couchbase.com>

show more ...

99e2edb228-Oct-2016 abhinavdangeti <abhinav@couchbase.com>

MB-26364: Warnings in forestdb on Mac during build
MB-21503: Replace OSSpinLock with os_unfair_lock for OSX>=10.12

OSSpinLock has been deprecated in OSX 10.12 onwards (Sierra),
repla

MB-26364: Warnings in forestdb on Mac during build
MB-21503: Replace OSSpinLock with os_unfair_lock for OSX>=10.12

OSSpinLock has been deprecated in OSX 10.12 onwards (Sierra),
replacing it with the suggestion from the compiler.

Removed the SPIN_INITIALIZER check in filemgr_shutdown as it is not needed and casues failures.

Reviewed-on: http://review.couchbase.org/69301
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: Sundararaman Sridharan <sundar@couchbase.com>
Change-Id: I4642be7b1302fb209326ee85796b9cf5a23d8cdf
Reviewed-on: http://review.couchbase.org/87701
Reviewed-by: Sundar Sridharan <sundar@couchbase.com>
Tested-by: Sundar Sridharan <sundar@couchbase.com>

show more ...

a54fc06a27-Jan-2018 sduvuru <sduvuru@gmail.com>

MB-28038: [FM] Attempting to write to a buffer still in use

Original fix was in MB-27005
sb_bmp_is_writable() was reporting a block is not writable. This is because the
test bid >= l

MB-28038: [FM] Attempting to write to a buffer still in use

Original fix was in MB-27005
sb_bmp_is_writable() was reporting a block is not writable. This is because the
test bid >= last_commit fails. This is due to the last_writable_bmp_revnum
getting set in all cases, even when last_commit was set to the end of file.
This causes the a bitmap version mismatch in the check for a writable block.
This fix is a work around to avoid the failure. By setting the last_writable_bmp_revnum
to current bitmap version only when last_commit is not set to end of file.

Change-Id: I4ac68b381599f9ebf87badb3fbb6e350203b8a8e
Reviewed-on: http://review.couchbase.org/88454
Well-Formed: Build Bot <build@couchbase.com>
Reviewed-by: Sundar Sridharan <sundar@couchbase.com>
Tested-by: Sundar Sridharan <sundar@couchbase.com>
Reviewed-on: http://review.couchbase.org/88549

show more ...

04f1e58b08-Dec-2017 sduvuru <sduvuru@gmail.com>

MB-26978: Unit test failed with "fdb_anomaly_test........*** Exception

Compaction opens the new file, switches to it, closes and unlinks
upon success. However when compaction fails after

MB-26978: Unit test failed with "fdb_anomaly_test........*** Exception

Compaction opens the new file, switches to it, closes and unlinks
upon success. However when compaction fails after the switch, the old file is
not closed. An attempt to shutdown forestdb, destroys the compactor
mutex and then fails with file busy error. The next attempt to open the
old file does not initialize the compactor mutex as forest db was not
shutdown. When an attempt to signal a condition for that mutex is made,
the signal call hangs as the associated mutex is destroyed.

The fix is to close the old file upon a failure.

The tests for compaction failure in anomaly tests are also updated to
look for the status of all the calls and validate them.

Change-Id: Ifed47c06442c18c295d493a54d266c37cb02cf71
Reviewed-on: http://review.couchbase.org/86676
Well-Formed: Build Bot <build@couchbase.com>
Reviewed-by: Sundar Sridharan <sundar@couchbase.com>
Tested-by: Srinath Duvuru <sduvuru@gmail.com>

show more ...

a7644acc08-Nov-2017 sduvuru <sduvuru@gmail.com>

MB-26434: After a failed compaction, the original file cannot be re-compacted

This fixes a regression caused by a change to update the next file after
compaction recovery.
https://gi

MB-26434: After a failed compaction, the original file cannot be re-compacted

This fixes a regression caused by a change to update the next file after
compaction recovery.
https://github.com/couchbase/forestdb/blob/spock/src/forestdb.cc#L2194

The fix is to not have the old filename and new filename in the handle.
Recovery of the file has made sure the correct file is now used based
on whether the compaction succeeded or failed.

Added more logging to follow the compaction recovery activity.
Added test cases to verify the re-compaction works after recovery.

Change-Id: I1ec74abb8c23000c64366a0e0e0ff1cf03e823c9
Reviewed-on: http://review.couchbase.org/85266
Reviewed-by: Sundar Sridharan <sundar@couchbase.com>
Tested-by: Srinath Duvuru <sduvuru@gmail.com>

show more ...

9c4bf80323-Jun-2017 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-24963: Add ISO 8601 timestamp for ForestDB

* Now every ForestDB log is prefixed with ISO 8601 timestamp.

Change-Id: I5138238d380e60e6cd3fea96ad56078e1f10fa0b
Reviewed-on: htt

MB-24963: Add ISO 8601 timestamp for ForestDB

* Now every ForestDB log is prefixed with ISO 8601 timestamp.

Change-Id: I5138238d380e60e6cd3fea96ad56078e1f10fa0b
Reviewed-on: http://review.couchbase.org/79924
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>

show more ...

a3fc160b28-Jun-2017 Jung-Sang Ahn <jungsang.ahn@gmail.com>

[BP] MB-22718: Support validity check of old format files

* Added one more routine that checks whether opened file name is the
same with the given file name. If file name is different, i

[BP] MB-22718: Support validity check of old format files

* Added one more routine that checks whether opened file name is the
same with the given file name. If file name is different, it means that
previous compaction already succeeded. We can use it for validity check
of old format files that do not include SUCCESSFULLY_COMPACTED flag.

Change-Id: I7820c3bc1272b3bff0d106995fdaf110182102b6
Reviewed-on: http://review.couchbase.org/80123
Reviewed-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>
Tested-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>

show more ...

f9852de722-Jun-2017 Jung-Sang Ahn <jungsang.ahn@gmail.com>

[BP] MB-22718: Do sort by compaction number in fdb_validate_files() API

* Lexicographical order does not guarantee the correct order of file,
for example, fdb.10 is prior than fdb.5.

[BP] MB-22718: Do sort by compaction number in fdb_validate_files() API

* Lexicographical order does not guarantee the correct order of file,
for example, fdb.10 is prior than fdb.5.

* Extract the compaction number at the end of each file name, and then
sort them in a numerical order.

Change-Id: Ic72afe5bff5dec5473453a16b72567196764877c
Reviewed-on: http://review.couchbase.org/79902
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>

show more ...

b6e47bcd22-Jun-2017 Jung-Sang Ahn <jungsang.ahn@gmail.com>

[BP] MB-22718: Add an API to find last valid file

* Added a new flag to DB header, indicates whether or not compaction
has been done successfully.

* Added a new API to check val

[BP] MB-22718: Add an API to find last valid file

* Added a new flag to DB header, indicates whether or not compaction
has been done successfully.

* Added a new API to check validity of the given series of files, using
above flag.

* It returns the last valid index number of the given file name array.

* All given files should belong to the same series of logical DB
instance.

Change-Id: Id6fd51cb3186e614f6c76837512374292a8877dd
Reviewed-on: http://review.couchbase.org/79901
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>

show more ...

5827abea23-Mar-2017 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-23416: Handle memory allocation failure during compaction

* The sorting window or document write batch in compaction logic are
big memory segments, thus allocating them may fail in th

MB-23416: Handle memory allocation failure during compaction

* The sorting window or document write batch in compaction logic are
big memory segments, thus allocating them may fail in the environment
with small RAM, such as mobile devices.

* We retry allocation with reduced size, and then return failure after
a few more attempts.

Change-Id: I16d04c8ff6314a47dfbf8f71b27e2729c1d3d6b4
Reviewed-on: http://review.couchbase.org/75630
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>

show more ...

cc8ad99118-Apr-2017 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-23835: Propagate allocation failure in docio_init()

* The failure of the allocation of aligned memory causes various kinds
of crashes in DocIO layer.

* Set 'handle->readbuffe

MB-23835: Propagate allocation failure in docio_init()

* The failure of the allocation of aligned memory causes various kinds
of crashes in DocIO layer.

* Set 'handle->readbuffer' to NULL if allocation failed.

* Propagate error to caller layer, to handle it gracefully.

Change-Id: I5aa3b5dc3d7f777f2b48fc69a12e15e30c15a529
Reviewed-on: http://review.couchbase.org/76925
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>

show more ...

74dd921417-Apr-2017 Jung-Sang Ahn <jungsang.ahn@gmail.com>

MB-23583: Gracefully handle errors during block reclaiming

* realloc() call or decompression may cause error in block reclaiming
task, but those errors do not propagate to the upper laye

MB-23583: Gracefully handle errors during block reclaiming

* realloc() call or decompression may cause error in block reclaiming
task, but those errors do not propagate to the upper layer so it causes
crash later.

* Immediately stop block reclaiming task if any kinds of errors happens.

Change-Id: I35ccace0afc03102fa55b889c148f4d4d65d2fbe
Reviewed-on: http://review.couchbase.org/76920
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>

show more ...

e461559907-Feb-2017 Jung-Sang Ahn <jungsang.ahn@gmail.com>

[BP] MB-22538 Use file name instead of pointers for old/new file link

* Based on the same logic in
http://review.couchbase.org/#/c/66318

* Removed prev_file, new_file pointers

[BP] MB-22538 Use file name instead of pointers for old/new file link

* Based on the same logic in
http://review.couchbase.org/#/c/66318

* Removed prev_file, new_file pointers, and added new member variable
for new file name.

* Both old file name and new file name are used for tracking the
compaction order.

Change-Id: I211e3f6ac237305badae882dcd46cb81af30b01a
Reviewed-on: http://review.couchbase.org/73263
Reviewed-by: abhinav dangeti <abhinav@couchbase.com>
Tested-by: Jung-Sang Ahn <jungsang.ahn@gmail.com>

show more ...

1d16951015-Dec-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-21953: Re-open compacted file in rollback to 0 retry

The following racy sequence causes a hang in rollback..
1. Default KV Store opened, new handle created for default kvs.
2

[BP] MB-21953: Re-open compacted file in rollback to 0 retry

The following racy sequence causes a hang in rollback..
1. Default KV Store opened, new handle created for default kvs.
2. Compaction runs and changes file to REMOVED_PENDING
3. rollback attempted with Default KV store handle still pointing to
old file.
4. rollback to zero attempts to remove kvs but finds current file
of root handle in FILE_REMOVE_PENDING state and retries operation.
During retry, new file is not re-opened but rather same file is
examined repeatedly causing a hang.
Simple fix is to check for file reopen on retry even for
rollback to zero
+Test case to reproduce the hang.

Change-Id: Id7e89873c7e283711ce1a1d411ee76e804e0dd06
Reviewed-on: http://review.couchbase.org/70977
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Well-Formed: buildbot <build@couchbase.com>
Tested-by: Sundararaman Sridharan <sundar@couchbase.com>

show more ...

0c08400513-Dec-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP]: MB-21953: Reset file state on compaction failure

If compaction fails on last phase, then file state can remain
in FILE_COMPACT_OLD. This can cause rollback to infinitely
loop,

[BP]: MB-21953: Reset file state on compaction failure

If compaction fails on last phase, then file state can remain
in FILE_COMPACT_OLD. This can cause rollback to infinitely
loop, resulting in hang.
Add fdb_anomaly_test that exactly reproduces this hang.

Change-Id: I6f3388553e6508a2846ce0900e341f93777401b3
Reviewed-on: http://review.couchbase.org/70889
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Well-Formed: buildbot <build@couchbase.com>
Tested-by: Sundararaman Sridharan <sundar@couchbase.com>

show more ...

6d8127fc26-Sep-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-21045: Reclaim stale blocks for non-snapshot handles

Non-snapshot handles which are not actively being used
for any forestdb api calls but are still lingering around
prevents

[BP] MB-21045: Reclaim stale blocks for non-snapshot handles

Non-snapshot handles which are not actively being used
for any forestdb api calls but are still lingering around
prevents their headers being reclaimed for stale block reuse.
Circular block re-use must only consider active snapshot
(and iterator) handles since these are the only types which
do not refresh upon their next forestdb call.
+ Basic stale block functionality verification test.

Change-Id: I1074a32fb3c83fe38ee59500f71d512d599b2a66
Reviewed-on: http://review.couchbase.org/67988
Tested-by: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Reviewed-on: http://review.couchbase.org/68639
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

ef4619e921-Sep-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-20091: Don't return root handle on fdb_kvs_open_default

root handle is used internally for commit and must never be
returned by fdb_kvs_open_default() or fdb_rollback()
Other

[BP] MB-20091: Don't return root handle on fdb_kvs_open_default

root handle is used internally for commit and must never be
returned by fdb_kvs_open_default() or fdb_rollback()
Otherwise a reader and writer sharing same file handle
can end up sharing the same KVS Handle and hitting HANDLE_BUSY
Test case: 1 reader 1 writer share file handle,
but different default kvs handles

Change-Id: If376b0c4d94b97d0f504024f5ce3fe3e6cf31d0b
Reviewed-on: http://review.couchbase.org/67901
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

5b78091c20-Sep-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-20091: ThreadSanitizer race in handle->last_hdr_bid

WARNING: ThreadSanitizer: data race (pid=29250)
Write of size 8 at 0x7d4c00117c18 by thread T33:
#0 fdb_sync_db_header fo

[BP] MB-20091: ThreadSanitizer race in handle->last_hdr_bid

WARNING: ThreadSanitizer: data race (pid=29250)
Write of size 8 at 0x7d4c00117c18 by thread T33:
#0 fdb_sync_db_header forestdb.cc:1071
#1 FdbEngine::get(FdbKvsHandle*, fdb_doc_struct*, bool) forestdb.cc:2939
#2 fdb_get forestdb.cc:1246
#3 FdbEngine::getKeyValue() api_wrapper.cc:120
#4 fdb_get_kv api_wrapper.cc:51 #5 multi_thread_fhandle_share(void*)
fdb_functional_test.cc:2288

Previous read of size 8 at 0x7d4c00117c18 by thread T34 (mutexes:
write M66515, write M66518, write M66402):
#0 FdbFileHandle::getOldestActiveHeader() file_handle.cc:282
#1 fdb_get_smallest_active_header kv_instance.cc:1215
#2 Superblock::reclaimReusableBlocks(FdbKvsHandle*) superblock.cc:1286
#3 FdbEngine::commitWithKVHandle(FdbKvsHandle*, unsigned char,
bool) forestdb.cc:3786
#4 fdb_commit forestdb.cc:3587
#5 multi_thread_fhandle_share(void*) fdb_functional_test.cc:2272

Change-Id: Ifcf1168bf770294b1df1c729211404b4d5af4a56
Reviewed-on: http://review.couchbase.org/67847
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

c3456ce220-Sep-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-20091: ThreadSanitizer Race in superblock bmp_revnum

WARNING: ThreadSanitizer: data race (pid=29250)
Write of size 8 at 0x7d380000df40 by thread T34 (mutexes:
write M66515,

[BP] MB-20091: ThreadSanitizer Race in superblock bmp_revnum

WARNING: ThreadSanitizer: data race (pid=29250)
Write of size 8 at 0x7d380000df40 by thread T34 (mutexes:
write M66515, write M66522):
#0 Superblock::reclaimReusableBlocks(FdbKvsHandle*) superblock.cc:1323
#1 FdbEngine::commitWithKVHandle(FdbKvsHandle*, unsigned char, bool) forestdb.cc:3786
#2 fdb_commit forestdb.cc:3587
#3 multi_thread_fhandle_share(void*)
(fdb_functional_test+0x0000004d6b56)

Previous read of size 8 at 0x7d380000df40 by thread T33:
#0 FileMgr::getSbBmpRevnum() superblock.h:209
#1 DocioHandle::_readThroughBuffer_Docio(unsigned long, bool) docio.cc:717
#2 DocioHandle::_readLength_Docio(unsigned long,
docio_length*, bool) docio.cc:810
#3 DocioHandle::validateChecksum_Docio(bool, long*,
docio_length*, fdb_status*) docio.cc:993
#4 DocioHandle::readDoc_Docio(unsigned long, docio_object*,
bool) docio.cc:1227
#5 FdbEngine::get(FdbKvsHandle*, fdb_doc_struct*, bool)
forestdb.cc:2987
#6 fdb_get forestdb.cc:1246

Change-Id: Ia913b262a3f4c5bcf35d5c2aa1be59ddf3a92af5
Reviewed-on: http://review.couchbase.org/67846
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Well-Formed: buildbot <build@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

e6c5505316-Sep-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP]:MB-20755: Avoid array index-out-of-bounds in compact_move_docs

Change-Id: Ia76494dd985683081ec91ed8b7b4cf96421e6289
Reviewed-on: http://review.couchbase.org/67530
Well-Formed: b

[BP]:MB-20755: Avoid array index-out-of-bounds in compact_move_docs

Change-Id: Ia76494dd985683081ec91ed8b7b4cf96421e6289
Reviewed-on: http://review.couchbase.org/67530
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Sundararaman Sridharan <sundar@couchbase.com>
Tested-by: Sundararaman Sridharan <sundar@couchbase.com>

show more ...

0d24efb912-Aug-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-20499: Distinguish seek_to_min/max from regular seek

SET : a b1 b2 b3 c
ITERATOR: [b - c] skip max key
SEEK : c (expected ITR_FAIL, returned result b3)
Reason sinc

[BP] MB-20499: Distinguish seek_to_min/max from regular seek

SET : a b1 b2 b3 c
ITERATOR: [b - c] skip max key
SEEK : c (expected ITR_FAIL, returned result b3)
Reason since seek was overloaded by seek_to_max and seek_to_min
b3 was returned even in regular seek()

Change-Id: I0b98c92ca6494637400e6d3c835741f07ac5eeb4
Reviewed-on: http://review.couchbase.org/66748
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Well-Formed: buildbot <build@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

b10aec3303-Aug-2016 abhinavdangeti <abhinav@couchbase.com>

[BP] MB-20040: Acquire last_hdr_bid before move_docs phase of compaction

+ Acquire the last_hdr_bid value before invoking fdb_compact_move_docs
during fdb_compact_file, to avoid fdb_co

[BP] MB-20040: Acquire last_hdr_bid before move_docs phase of compaction

+ Acquire the last_hdr_bid value before invoking fdb_compact_move_docs
during fdb_compact_file, to avoid fdb_compact_move_docs (which
invokes fdb_get_file_info, and there by fdb_sync_db_header) from
shifting the last_hdr_bid, causing delta compaction to fail to move
some of the documents to the new file.
+ Fix mvcc_functional_test: snapshot_concurrent_compaction_test to
complete in a finite amount of time. This test sets a compaction
callback that writes items as part of the callback, meaning
fdb_compact_move_delta which invokes the compaction_callback fn,
will always find delta docs to move on every iteration.

(Reviewed on: http://review.couchbase.org/#/c/66459/)

Change-Id: I0af184c296d922a0afadc426ecb31c75b18cdf97
Reviewed-on: http://review.couchbase.org/66472
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

fee2123926-Jul-2016 Sundar Sridharan <sundar.sridharan@gmail.com>

[BP] MB-20284:Auto commit on close iff file had new data

If there was no data written calling fdb_commit unncessarily
causes file size to grow when auto_commit option is enabled.

[BP] MB-20284:Auto commit on close iff file had new data

If there was no data written calling fdb_commit unncessarily
causes file size to grow when auto_commit option is enabled.

Change-Id: I7fa98f4bf082874b7b8a024e9d65b0a56d2a55b8
Reviewed-on: http://review.couchbase.org/66241
Well-Formed: buildbot <build@couchbase.com>
Reviewed-by: Chiyoung Seo <chiyoung@couchbase.com>
Tested-by: Chiyoung Seo <chiyoung@couchbase.com>

show more ...

12345678910>>...36