~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/pbxt/ChangeLog

  • Committer: lbieber
  • Date: 2010-09-22 13:48:54 UTC
  • mfrom: (1784.1.3 build)
  • Revision ID: lbieber@orisndriz08-20100922134854-y7mae2taqhn73vsx
Merge Paul M. - latest changes from PBXT 1.0.11-7
Merge Paul M. - fix bug 641038 - pbxt rollback not working (tables reported as non-transactional)
Merge Andrew - fix show stoppers for new drizzledump

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
PBXT Release Notes
2
2
==================
3
3
 
4
 
------- 1.1.01 Beta - Not yet released
 
4
------- 1.1.01 RC - 2010-06-11
5
5
 
6
6
RN1/17: Fixed bug #430637: 'ERROR -86: Too many threads' reported during concurrecy test. I have removed the maximum thread limit. The system variable pbxt_max_threads has been depricated, and will no longer be supported in 1.1.
7
7
 
36
36
- When out of index cache, we now check other tables to see if the index cache needs to be flushed. This is not done if more than 1/4 of the entire index cache is dirty due to the current index. Tables are sorted, the one with the most dirty index pages is flushed first.
37
37
- When out of index cache, if less than 1/4 of the entire index cache is dirty then no flushing is done. This can happen if another thread has cleaned the cache in the meantime.
38
38
 
39
 
RN1/4: Added try lock variation for R/W locks (required to fix deadlock RN246).
 
39
RN1/4: Added try lock variation for R/W locks (required to fix deadlock RN1/3).
40
40
 
41
41
RN1/3: Fixed a deadlock that could occur during low index cache situations and added some checks for index corruption.
42
42
 
46
46
 
47
47
CREATE TABLE t1 (�) ENGINE=PBXT STORAGE MEMORY
48
48
 
 
49
------- 1.0.11-7 Pre-GA - 2010-09-09
 
50
 
 
51
RN336: Compiled and tested with MySQL 5.1.50.
 
52
 
 
53
RN335: Fixed bug #523994: Deleting all records does not update table statistics. 
 
54
 
 
55
RN334: Made a change to reduce the time that only temporary tables exist during the ALTER TABLE and REPAIR TABLE statements. This increases the chance of recovery if a crash occurs during these operations.
 
56
 
 
57
RN333: Log name of table when PBXT recovers an index on startup. If an error occurs during index recovery, the index is set to "repair pending".
 
58
 
 
59
RN332: Fixed an inifinite loop when a record in a row is corrupt. Added logging and set the table to "repair pending" in this case.
 
60
 
 
61
RN331: Fixed bug #626890: Crash on truncate table operation.
 
62
 
 
63
RN330: Added additional checks for corruption of the index free list.
 
64
 
 
65
------- 1.0.11-6 Pre-GA - 2010-07-08
 
66
 
 
67
RN329: Fixed bug #601245: make fails. PBXT did not compile if the partition engine was disabled in the MySQL build.
 
68
 
 
69
------- 1.0.11-5 Pre-GA - 2010-06-18
 
70
 
 
71
RN328: Fixed bug #595478: Compile fails (1.0.11-4).
 
72
 
 
73
------- 1.0.11-4 Pre-GA - 2010-06-15
 
74
 
 
75
RN327: Fixed a bug that caused a crash during delete on the index. The crash occurred due to memory overwrite when a long key is promoted after a shorter key is deleted, and the difference causes a node size overflow.
 
76
 
 
77
------- 1.0.11-3 Pre-GA - 2010-06-11
 
78
 
 
79
RN326: Fixed bug #587740: pbxt-1.0.11-pre2-ga first time create partition table error. This was not a new bug. The problem was the PBXT system table's .frm files are corrupted when the first PBXT table created is a partition table.
 
80
 
 
81
RN325: Fixed the "to-sweep" column output in xtstat.
 
82
 
 
83
------- 1.0.11-2 Pre-GA - 2010-05-26
 
84
 
 
85
RN324: Fixed bug #584070:pbxt-1.0.11-pre-ga does not work with mysql 5.1.47. This bug fix removes a hack which was done to avoid running into the LOCK_plugin lock.
 
86
 
 
87
------- 1.0.11-1 Pre-GA - 2010-05-19
 
88
 
 
89
RN323: Detect corruption of a key length in an index page. This bug fix avoids a possible crash due to index page corruption. 
 
90
 
 
91
------- 1.0.11 Pre-GA - 2010-05-11
 
92
 
 
93
RN322: Creating a table the references a non-existing table can now only be done if you set: foreign_key_checks = 0. Also fixed a failure when creating tables with recursive foreign key declarations.
 
94
 
 
95
RN321: Added "Extended record count" to the CHECK TABLE output. This indicates the number of records that have a data log component.
 
96
 
 
97
RN320: All tests now run with MySQL 5.1.46.
 
98
 
 
99
------- 1.0.10n RC4 - 2010-04-28
 
100
 
 
101
RN319: Fix RN1/3 and RN1/4 back-ported from 1.1: Fixed a deadlock that could occur during low index cache situations and added some checks for index corruption, and added the try lock variation for R/W locks.
 
102
 
 
103
RN318: Fixed a bug in the atomic R/W lock. This bug occurred on multi-core Linux when under extrem load. The affect was that an index lookup could fail. The index was not corrupted.
 
104
 
 
105
------- 1.0.10m RC4 - 2010-03-29
 
106
 
 
107
RN317: This change prevents a unscheduled checkpoint from occurring when the sweeper has work to do. Checkpoint required due to the Checkpoint threshold reached are done as usual.
 
108
 
 
109
------- 1.0.10k RC4 - 2010-03-29
 
110
 
 
111
RN316: Set the maximum delay, while waiting for previous transactions to commit to 1/100s. This situation occurs when cleanup begins of a long running transaction.
 
112
 
 
113
RN315: Fixed a bug that could lead to a data log error, for example: Data log not found: '.../dlog-129602.xt'. This error occurred after a duplicate key error, dending on the table structure, because the row buffer was not restored after writing an extended record.
 
114
 
 
115
RN314: Server startup time could be very long when data logs become large because the log size was not save in the header when a data log is full.
 
116
 
 
117
------- 1.0.10j RC4 - 2010-03-24
 
118
 
 
119
RN313: Fixed an error in the calculation of the handle data record (.xtd files) size when AVG_ROW_LENGTH is set explicitly to a value less than 12. For example:
 
120
 
 
121
CREATE TABLE objs (
 
122
  id int(10)  unsigned   NOT NULL,
 
123
  objdata     mediumblob NOT NULL,
 
124
  PRIMARY KEY (id)
 
125
) ENGINE=PBXT AVG_ROW_LENGTH=10
 
126
 
 
127
This table definition previously lead to corruption of the table because the handle data record was set to 24 (14+10), which is less than the minimum (for variable length records) handle data record size of 26.
 
128
 
 
129
This minimum consists of 14 byte record header and 12 bytes reference to the extended record data (the part of the record in the data log).
 
130
 
 
131
Tip: when setting AVG_ROW_LENGTH you should normally add 12 to the average row length estimate to ensure that the average length part of the record is always in the handle data file. This is important, for example if you wish to make sure that the rows used to build indexes are in the handle data file. CHECK TABLE tells you how many rows are in the "fixed length part" of the record (output in MySQL error log). In the example above, this would be AVG_ROW_LENGTH=17.
 
132
 
 
133
The maximum size of a field can be calculated adding the maximum byte size as described here: http://dev.mysql.com/doc/refman/5.1/en/storage-requirements.html, and then add the following values, depending on the byte size:
 
134
 
 
135
byte size <= 240, add 1
 
136
byte size < 2^16 (65536), add 3
 
137
byte size < 2^24 (16777216), add 4
 
138
byte size > 2^24, add 5
 
139
 
49
140
------- 1.0.10i RC4 - 2010-03-17
50
141
 
51
142
RN312: Fixed bug #534361: Valgrind error: write of uninitialised bytes in xt_flush_indices()
72
163
 
73
164
------- 1.0.10f RC4 - 2010-01-29
74
165
 
75
 
RN303: Fix back-ported from 1.1: Fixed a bug in the record cache that caused PBXT to think it had run out of cache memory. The effect was that PBXT used less and less cache over time. The bug occurs during heavy concurrent access on the record cache. The affect is the PBXT gets slower and slower.
 
166
RN303: Fix RN1/10 back-ported from 1.1: Fixed a bug in the record cache that caused PBXT to think it had run out of cache memory. The effect was that PBXT used less and less cache over time. The bug occurs during heavy concurrent access on the record cache. The affect is the PBXT gets slower and slower.
76
167
 
77
 
RN302: Fix back-ported from 1.1: Corrected a problem that sometimes caused a pause in activity when the record cache was full.
 
168
RN302: Fix RN1/11 back-ported from 1.1: Corrected a problem that sometimes caused a pause in activity when the record cache was full.
78
169
 
79
170
------- 1.0.10e RC4 - 2010-01-25
80
171