[MDEV-730] LP:1025254 - Aria: Corrupt tables when storing data with COMPRESS() Created: 2012-07-16 Updated: 2014-03-03 Resolved: 2014-03-03 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Minor |
| Reporter: | nbrnhardt (Inactive) | Assignee: | Unassigned |
| Resolution: | Incomplete | Votes: | 0 |
| Labels: | Launchpad | ||
| Attachments: |
|
| Description |
|
OS: Windows 32/64 bit We store our PDF files along with some other data in following table:
The PDF itself is stored in `pdf` MEDIUMBLOB via COMPRESS(). Uncompressed PDF is about 30 to 70KB in size. The respective program first reserves a number with first doing an INSERT with `belegnummer` and `belegart` (with rest of the fields ZERO or 0), generating the PDF and storing it via UPDATE. In various situations, we weren't able to do any updates on the table until I did a REPAIR table. Switching the table definition to MyISAM doesn't cause this issue. The issue arises randomly, so I can't provide you any files. |
| Comments |
| Comment by nbrnhardt (Inactive) [ 2012-07-16 ] | |||
|
Re: Aria: Corrupt tables when storing data with COMPRESS() | |||
| Comment by Elena Stepanova [ 2012-07-16 ] | |||
|
Re: Aria: Corrupt tables when storing data with COMPRESS() When you weren't able to do updates, what exactly error and/or message were you getting? Also, your table update, as you described it, is a 2-step procedure: INSERT, then UPDATE. Which part was breaking? Thanks. | |||
| Comment by nbrnhardt (Inactive) [ 2012-07-16 ] | |||
|
Re: Aria: Corrupt tables when storing data with COMPRESS() Error log shows only: Note: Zerofilling moved table: 'belegliste' No errors, no warnings. | |||
| Comment by nbrnhardt (Inactive) [ 2012-07-16 ] | |||
|
Re: Aria: Corrupt tables when storing data with COMPRESS() Zerofilling moved table: '.\dbv\belegliste' (null).(null): Page 178667520: Got error: 176 when reading datafile Checking table: '.\dbv\belegliste' dbv.belegliste: Table is from another system and must be zerofilled or repaired to be usable on this system Seems the db server on the slave tries to zerofill the table, fails and complains it should be zerofilled (or repaired). The table is freshly copied from the master to re-sync the master and slaves. But it should work on the master w/o repairing or zero-filling, | |||
| Comment by Elena Stepanova [ 2012-07-16 ] | |||
|
Re: Aria: Corrupt tables when storing data with COMPRESS() How did it deny it, what was it saying? | |||
| Comment by nbrnhardt (Inactive) [ 2012-07-16 ] | |||
|
Re: Aria: Corrupt tables when storing data with COMPRESS() | |||
| Comment by Elena Stepanova [ 2012-07-17 ] | |||
|
Re: Aria: Corrupt tables when storing data with COMPRESS()
| |||
| Comment by Elena Stepanova [ 2012-07-17 ] | |||
|
Re: Aria: Corrupt tables when storing data with COMPRESS() use test; update t set b = 'def' where i=1; /* 1 rows affected, 0 rows found. Duration for 1 query: 0,000 sec. */ update t set b = 'def' where i=1; /* 0 rows affected, 0 rows found. Duration for 1 query: 0,000 sec. */ So, in both cases it says 0 rows found, and in the second query it says 0 rows affected, because nothing changed. So, your manual check only shows that you either didn't have a match, or your table already had the fields populated. So back to the question – why do you think the update had been denied, and how did it look, exactly? | |||
| Comment by Rasmus Johansson (Inactive) [ 2012-07-18 ] | |||
|
Launchpad bug id: 1025254 | |||
| Comment by nbrnhardt (Inactive) [ 2012-07-18 ] | |||
|
Re: Aria: Corrupt tables when storing data with COMPRESS() I tried to manually do an update with HeidiSQL on the dummy row, with no luck. SELECT * FROM belegliste still showed me the row as it was made with INSERT. Also, I tried to DELETE that dummy row, with no luck either. SELECT * FROM belegliste still showed me the row as it was made with INSERT. A REPAIR TABLE belegliste helped, but this way I don't have any copy for you. Sorry. |