Commit graph

1349 commits

Author SHA1 Message Date
Sears Russell
1ff9afb753 added new constant: INVALID_SIZE 2010-02-11 20:36:33 +00:00
Sears Russell
fac5d2ff37 fix default LSN handling for pages with headers 2010-02-11 20:35:38 +00:00
Sears Russell
a5abadb580 partial update for fastcgi, clean up Stasis.pm 2010-01-27 21:49:12 +00:00
Sears Russell
9bdaf23764 add some more thread-safe pblHt wrappers to fix lockManager 2010-01-23 00:27:01 +00:00
Sears Russell
031e21fa6c fix race condition introduced by last commit 2010-01-22 23:52:57 +00:00
Sears Russell
3e2bbc2eb6 move lsn sets into reserve_entry. write_entry is now a no-op 2010-01-22 23:41:10 +00:00
Sears Russell
903728c589 shorten dirtyPageTable test. 2010-01-22 23:39:42 +00:00
Sears Russell
bb182ee0b0 fix new truncation check; it was using values for the old copy of the log to check the new copy. 2010-01-22 19:13:14 +00:00
Sears Russell
3849b5f131 silence compiler warnings 2010-01-22 19:09:58 +00:00
Sears Russell
49979ffa52 unit test for libredblack 2010-01-21 23:48:43 +00:00
Sears Russell
51dc17d1c3 fail earlier on mismatched truncation file. One run of check_multiplexer saw truncation leave a zero byte log 2010-01-21 23:48:04 +00:00
Sears Russell
bb92d86c85 fix check_lockManager. The lock manager now relies on a global mutex to protect its hashtables. Eventually, it should be ported over to the concurrentHash API (or something more general purpose...) 2010-01-21 22:43:38 +00:00
Sears Russell
434cec1b6a fix for regression in r1335. nextUnstableLSN needs to point to the beginning of a valid log entry. Add sizeof(lsn_t) to its computation so that we point at the beginning of the next entry, not to its size 2010-01-21 22:30:02 +00:00
Sears Russell
17ac09c652 fix deadlock in check_multiplexer. 2010-01-21 21:53:18 +00:00
Sears Russell
e2498b62be fix deadlock; reorderingHandle was acquiring a write latch while writing a log entry, leading to an inconsistent latch ordering 2010-01-21 21:05:25 +00:00
Sears Russell
dbf253275f fix nested top action log race; because of a refactoring mistake, it was releasing a mutex without acquiring it... 2010-01-21 20:27:35 +00:00
Sears Russell
9dba8770f0 test TsoftCommit(); make sure it works when TforceCommits() is called, and when Tdeinit() is called 2010-01-21 18:57:58 +00:00
Sears Russell
5f705a4463 skip the log force when TforceCommits() is called and the entire log has already been forced. The old behavior generated a redundant CRC entry and force wrote it. 2010-01-21 18:42:50 +00:00
Sears Russell
9f0886a565 fix typo that disabled the new tests 2010-01-21 18:40:28 +00:00
Sears Russell
f2ee7b6573 fix bug exposed by new group commit behavior; nextUnstableLSN was returning the offset of the beginning of the CRC entry, not the end of it. This was causing an assertion to fail. 2010-01-21 18:28:34 +00:00
Sears Russell
250223086c reordered includes for compatibility with gcc3 2010-01-21 00:03:17 +00:00
Sears Russell
f1f1d888e4 avoid use of -Wno-variadic-macros, which causes an error with gcc 3. 2010-01-20 23:51:54 +00:00
Sears Russell
b1f7d1947a more log refactoring. safeWrites now holds a latch across reserve_entry, write_entry, and write_entry_done 2010-01-19 02:14:09 +00:00
Sears Russell
94b356f837 sample stasis web services for apache modperl and fastcgi. Both are multithreaded. However, the modperl one is racy. FastCGI is currently the recommended approach 2010-01-19 02:11:04 +00:00
Sears Russell
417eec45c4 harden Stasis.pm initialization against a wider range of crazy environments (ie: apache modperl and fastcgi). Add TsoftCommit and TforceCommits to the perl binding 2010-01-19 01:56:40 +00:00
Sears Russell
18508fd2f1 fix stasis_log_force and groupForce to handle INVALID_LSN properly; instead of bypassing group force in LOG_FORCE_COMMIT mode, they now unconditionally group commit. This allows TforceCommits() to take advantage of group commit 2010-01-19 01:54:53 +00:00
Sears Russell
19061227b3 fix recovery corner case; it is possible that Tdealloc() is called before the regions are registered with the allocator 2010-01-19 01:48:17 +00:00
Sears Russell
c8cc188b71 unsigned int -> uint32_t 2010-01-19 01:47:13 +00:00
Sears Russell
560cdc2330 fix compiler warning 2010-01-11 23:13:53 +00:00
Sears Russell
46b428547d fix log entry leak in redorderingHandle 2010-01-11 23:07:08 +00:00
Sears Russell
022136d3c3 move inMemoryLog, to the new api 2010-01-11 22:55:55 +00:00
Sears Russell
fa4e4fa980 fix compile warning 2010-01-11 21:02:25 +00:00
Sears Russell
67b8808739 fix flex test 2010-01-11 21:00:46 +00:00
Sears Russell
d71e248291 removed freeLogEntry 2010-01-11 20:41:59 +00:00
Sears Russell
8999f1acd4 add -lpthread to Stasis.pm LIBS 2010-01-11 19:54:45 +00:00
Sears Russell
4e029988f3 add missing unit test 2010-01-11 19:30:20 +00:00
Sears Russell
f041f0a653 clean up perl unit tests; add support for storing tied hashes in tied hashes 2010-01-11 19:29:52 +00:00
Sears Russell
44e5e8b4fc Refactor regions to avoid hack during startup. It used to allocate a dummy log entry, then free it. This causes trouble with the upcoming log api, since the log implementation will need to manage log entry memory for performance reasons. 2010-01-07 21:57:13 +00:00
Sears Russell
0ac0a768aa run tests using nice. this allows certain linux systems to remain responsive to user input while running check_dirtyPageTable 2010-01-07 21:52:04 +00:00
Sears Russell
c30aaa3a1a fix compiler warning; -1 is not comparable to entry->type 2010-01-07 21:50:17 +00:00
Sears Russell
f3d06543e5 silence spammy debugging messages; clean up check_io test case implementation a bit 2010-01-06 23:44:07 +00:00
Sears Russell
078a8619fe check flex version (fixes compilation under rhel 5) 2010-01-06 23:43:31 +00:00
Sears Russell
1af589dd18 remove malloc and memcpy from the in_memory_log read path 2009-12-31 23:25:56 +00:00
Sears Russell
1409a9eb27 more refactoring; log handles now manage their log entries memory 2009-12-31 23:01:37 +00:00
Sears Russell
a5788688c8 refactor getUpdateArgs; remove a bunch of casts, fix a bunch of warnings 2009-12-31 20:20:47 +00:00
Sears Russell
1c82f9e76e add parens to ambiguous if 2009-12-31 19:47:27 +00:00
Sears Russell
9aa1d9d652 pull memcpy out of allocUpdateEntry() 2009-12-31 19:30:40 +00:00
Sears Russell
32e40c949d added log modes to sequentialThroughput benchmark, added methods for concurrent appends to log api (and stubbed them out) 2009-12-31 19:02:34 +00:00
Sears Russell
69c513b913 some untested code to deal with perl hashes 2009-12-31 17:39:35 +00:00
Sears Russell
7ff80f37ef add deferred, end of transaction callbacks. addresses issue 15 2009-12-15 06:30:37 +00:00