mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 18:20:07 +01:00
Merge narttu:/my/bk/mysql into prima.mysql.com:/home/my/bk/mysql
This commit is contained in:
commit
b7d81c0379
3 changed files with 12 additions and 4 deletions
|
@ -38808,6 +38808,12 @@ though, so Version 3.23 is not released as a stable version yet.
|
|||
@appendixsubsec Changes in release 3.23.28
|
||||
@itemize @bullet
|
||||
@item
|
||||
Fixed a major performance bug in the table locking code when you
|
||||
constantly had a LOT of @code{SELECT} running on a table on which you
|
||||
also did a lot of @code{UPDATE} and @code{INSERT}. The symptom was that
|
||||
the @code{UPDATE} and @code{INSERT} queries was locked a long time
|
||||
while @code{SELECT} statements where executed without locks.
|
||||
@item
|
||||
One can now specify @code{interactive-timeout} in the option file that
|
||||
is read by @code{mysql_options()}. This makes it possible to force
|
||||
programs that runs for a long time (like @code{mysqlhotcopy}) to use
|
||||
|
@ -43353,6 +43359,8 @@ Secure connections (with SSL).
|
|||
@item
|
||||
Extend the optimizer to be able to optimize some
|
||||
@code{ORDER BY key_name DESC} queries.
|
||||
@item
|
||||
New key cache
|
||||
@end itemize
|
||||
|
||||
@node TODO future, TODO sometime, TODO MySQL 4.0, TODO
|
||||
|
|
|
@ -653,7 +653,7 @@ void thr_unlock(THR_LOCK_DATA *data)
|
|||
data->type=TL_UNLOCK; /* Mark unlocked */
|
||||
check_locks(lock,"after releasing lock",1);
|
||||
|
||||
if (!lock->write.data) /* If no active read locks */
|
||||
if (!lock->write.data) /* If no active write locks */
|
||||
{
|
||||
data=lock->write_wait.data;
|
||||
if (!lock->read.data) /* If no more locks in use */
|
||||
|
@ -742,7 +742,7 @@ void thr_unlock(THR_LOCK_DATA *data)
|
|||
data->next->prev= data->prev;
|
||||
else
|
||||
lock->write_wait.last=data->prev;
|
||||
(*lock->write.last)=data; /* Put in execute list */
|
||||
(*lock->write.last)=data; /* Put in execute list */
|
||||
data->prev=lock->write.last;
|
||||
lock->write.last= &data->next;
|
||||
data->next=0; /* Only one write lock */
|
||||
|
@ -756,7 +756,7 @@ void thr_unlock(THR_LOCK_DATA *data)
|
|||
(lock_type == TL_WRITE_CONCURRENT_INSERT ||
|
||||
lock_type == TL_WRITE_ALLOW_WRITE));
|
||||
}
|
||||
else if (lock->read_wait.data)
|
||||
else if (!data && lock->read_wait.data)
|
||||
free_all_read_locks(lock,0);
|
||||
}
|
||||
end:
|
||||
|
|
|
@ -31,6 +31,6 @@
|
|||
|
||||
char *llstr(longlong value,char *buff)
|
||||
{
|
||||
longlong2str(value,buff,10);
|
||||
longlong2str(value,buff,-10);
|
||||
return buff;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue