Commit graph

1154 commits

Author SHA1 Message Date
unknown
454e889f44 Fixes for 4.1 to be as in 5.0 and above.
client/mysql.cc:
  Fixed to be as in 5.0 and above.
client/mysqldump.c:
  Fixed to be as in 5.0 and above.
include/my_sys.h:
  Fixed to be as in 5.0 and above.
mysys/my_static.c:
  Fixed to be as in 5.0 and above.
2007-03-27 18:51:02 +03:00
unknown
7eb3881bd8 Fixed compiler warnings.
mysys/default.c:
  Fixed bug.
ndb/src/mgmclient/CommandInterpreter.cpp:
  Added parenthesis around the expression.
sql/mysqld.cc:
  Fixed compiler warnings.
  
  Added a missing component in options struct (bug).
sql-common/my_time.c:
  Removed garbage.
sql/sql_table.cc:
  A possible use of a variable uninitialized.
support-files/compiler_warnings.supp:
  BitKeeper file /home/my/bk/mysql-4.1-main/support-files/compiler_warnings.supp
2007-03-22 20:32:07 +02:00
unknown
d4d8d132eb Merge mysql.com:/home/kent/bk/tmp/mysql-4.0
into  mysql.com:/home/kent/bk/tmp/mysql-4.1-build


include/Makefile.am:
  Auto merged
2007-03-12 13:15:11 +01:00
unknown
32b370bb7f Makefile.am, configure.in, mysys.dsp:
Removed unused files
.del-my_winsem.c:
  Delete: mysys/my_winsem.c
.del-my_semaphore.c:
  Delete: mysys/my_semaphore.c
.del-my_semaphore.h:
  Delete: include/my_semaphore.h


BitKeeper/deleted/.del-my_semaphore.c:
  Delete: mysys/my_semaphore.c
BitKeeper/deleted/.del-my_semaphore.h:
  Delete: include/my_semaphore.h
BitKeeper/deleted/.del-my_winsem.c:
  Delete: mysys/my_winsem.c
VC++Files/mysys/mysys.dsp:
  Removed unused files
configure.in:
  Removed unused files
include/Makefile.am:
  Removed unused files
mysys/Makefile.am:
  Removed unused files
2007-03-12 13:12:42 +01:00
unknown
cf933534ea After-merge fix:
The declaration of "thr_client_alarm" had got lost, keep it in "mysys/thr_alarm.c".


mysys/thr_alarm.c:
  After-merge fix:
  In 4.1, the variable "thr_client_alarm" is declared in this module.
2007-02-20 13:10:27 +01:00
unknown
4a3472726b Merge trift2.:/MySQL/M40/clone-4.0
into  trift2.:/MySQL/M41/merge-4.1


include/config-win.h:
  Auto merged
mysys/my_pthread.c:
  Auto merged
mysys/thr_alarm.c:
  Auto merged
mysys/my_thr_init.c:
  Not applicable to 4.1 in its current state.
sql/mysqld.cc:
  Change was a backport already, null-merged to 4.1.
2007-02-20 13:02:39 +01:00
unknown
715281a94b Fix a linkage problem with the previous patch for "thr_client_alarm".
mysys/my_pthread.c:
  Linkage problem with previous patch: "thr_client_alarm" must be declared in here.
mysys/thr_alarm.c:
  Linkage problem: Declare "thr_client_alarm" over in "mysys/my_pthread.c".
2007-02-12 20:13:34 +01:00
unknown
2d2957c041 Break a double declare of "uint thr_client_alarm" between "mysys/thr_alarm.c" and "mysys/my_pthread.c".
mysys/my_pthread.c:
  Break a double declare: "uint thr_client_alarm" is also declared in "mysys/thr_alarm.c", take it from there.
2007-02-12 19:55:33 +01:00
unknown
2a221c8014 Compile error on Windows: Signal names are undefined. Fix by hiding the whole section.
mysys/my_thr_init.c:
  Compile error on Windows: Both "SIGALRM" and "SIGUSR1" are undefined.
  Fix by hiding the whole section, according to Jani it is not needed on Windows.
2007-02-12 15:03:11 +01:00
unknown
43ada21fe1 Merge siva.hindu.god:/home/tsmith/m/bk/41
into  siva.hindu.god:/home/tsmith/m/bk/maint/41


sql/sql_prepare.cc:
  Manual merge
2007-02-08 16:01:13 -07:00
unknown
31aee856d8 Merge 192.168.0.10:mysql/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint


mysys/default.c:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
2007-02-06 14:44:05 +01:00
unknown
9946ed16f3 Test and bug fixes and removed unneccessary files.
mysys/my_getopt.c:
  Fixes problem with getting output lines from
  my_getopt in random places in tests.
sql/sql_prepare.cc:
  Fixes problem with failing mysql_client_test
  on some machines. This is actually a problem
  with prepared statements.
2007-02-05 17:09:44 +02:00
unknown
5305cd7caf After merge fix 2007-02-02 10:01:44 +01:00
unknown
62fdcb54a7 Merge chilla.local:/home/mydev/mysql-4.0-axmrg
into  chilla.local:/home/mydev/mysql-4.1-axmrg


include/my_global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/thr_alarm.h:
  Auto merged
mysys/default.c:
  Auto merged
mysys/my_pthread.c:
  Auto merged
mysys/thr_alarm.c:
  Auto merged
mysys/my_thr_init.c:
  Manual merged
sql/mysqld.cc:
  Manual merged
2007-02-01 08:09:36 +01:00
unknown
70fe372a2c Merge bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint


configure.in:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
scripts/mysqld_multi.sh:
  Auto merged
sql/mysqld.cc:
  Auto merged
2007-01-31 16:26:12 -05:00
unknown
7be3cad45d Merge bk://localhost:5559
into  production.mysql.com:/usersnfs/jamppa/mysql-4.0


include/my_global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
mysys/default.c:
  Auto merged
mysys/my_pthread.c:
  Auto merged
mysys/my_thr_init.c:
  Auto merged
mysys/thr_alarm.c:
  Auto merged
sql/mysqld.cc:
  Auto merged
2007-01-30 17:52:27 +01:00
unknown
cdf6001aeb Cleanup of thread-type (linuxthread or NTPL) detection code
Move get_thread_lib to mysys/my_pthread.c
Set 'thr_client_alarm' to signal number used by thr_alarm to give alarms


include/my_global.h:
  Fixed to be same as in 5.1
include/my_pthread.h:
  Move things around to be more in line with rest of code
mysys/default.c:
  Fixed two wrong pointer incrementations.
mysys/my_pthread.c:
  Cleanup: Use variable thr_client_alarm
mysys/my_thr_init.c:
  Detect thread library at startup.
  Set also thr_client_alarm signal here, so that we get
  it in init_signals() in mysqld
mysys/thr_alarm.c:
  Set thr_client_alarm depending on which thread library we are using
sql/mysqld.cc:
  Move get_thread_lib to mysys/my_pthread.c
2007-01-30 18:52:26 +02:00
unknown
0c75fbb3c4 User visible change - breaks some environments, per Paul DuBois. Reverting in 4.1 and 5.0. 2007-01-26 12:00:38 -08:00
unknown
2ec2fa6d08 Cleanup of thread-type (linuxthread or NTPL) detection code
Move get_thread_lib to mysys/my_pthread.c
Set 'thr_client_alarm' to signal number used by thr_alarm to give alarms



include/my_global.h:
  Fixed to be same as in 5.1
include/my_pthread.h:
  Move things around to be more in line with rest of code
include/thr_alarm.h:
  extern of thr_client_alarm
mysys/default.c:
  Fixed two wrong pointer incrementations.
mysys/my_pthread.c:
  Cleanup: Use variable thr_client_alarm
mysys/my_thr_init.c:
  Detect thread library at startup
mysys/thr_alarm.c:
  Set thr_client_alarm depending on which thread library we are using
sql/mysqld.cc:
  Move get_thread_lib to mysys/my_pthread.c
2007-01-25 20:10:31 +02:00
unknown
077840fa23 Merge a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-4.0
into  a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-4.1


include/thr_alarm.h:
  Auto merged
mysys/my_pthread.c:
  Auto merged
BUILD/SETUP.sh:
  Merged from 4.0
configure.in:
  Merged from 4.0
include/my_global.h:
  Merged from 4.0
include/my_pthread.h:
  Merged from 4.0
mysys/thr_alarm.c:
  Merged from 4.0
sql/mysqld.cc:
  Merged from 4.0
BUILD/SETUP.sh.rej:
  Merged from 4.0
configure.in.rej:
  Merged from 4.0
include/my_global.h.rej:
  Merged from 4.0
include/my_pthread.h.rej:
  Merged from 4.0
mysys/thr_alarm.c.rej:
  Merged from 4.0
sql/mysqld.cc.rej:
  Merged from 4.0
2007-01-22 03:33:59 +02:00
unknown
454c763c6b Fix for configure to detect library correctly.
Fix to check library in use during runtime.
Fix for Bug#16995, "idle connections not being killed due to timeout when NPTL is used".


BUILD/SETUP.sh:
  To avoid warnings during compilation.
configure.in:
  Fixed configure so that it can correctly detect
  between NPTL and Linuxthreads.
include/my_global.h:
  Fix for Linuxthreads.
include/my_pthread.h:
  Added defines for different libraries that can be detected.
  Currently only 'other', 'nptl', and 'lt' (linuxthreads) are
  being used.
  
  changed sigset() and signal() to my_sigset() and my_signal()
include/thr_alarm.h:
  Removed defines for Linuxthreads. This is now detected during
  runtime and handled in the thr_alarm.c
mysys/my_pthread.c:
  Runtime check for library.
mysys/thr_alarm.c:
  Runtime checks for library and corresponding
  signals.
sql/mysqld.cc:
  Added function for detecting thread library in use
  during start-up.
  
  THR_KILL_SIGNAL removed, setting signals during runtime.
2007-01-22 02:32:07 +02:00
unknown
56e9169013 Merge kpdesk.mysql.com:/home/thek/dev/mysql-4.0-maint
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.1-maint


mysys/mf_iocache.c:
  Auto merged
mysys/my_seek.c:
  Auto merged
2007-01-11 15:16:33 +01:00
unknown
819c169783 Merge kpdesk.mysql.com:/home/thek/dev/test23010/my40-bug23010
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.0-maint
2007-01-11 15:14:34 +01:00
unknown
081b9c0e6b Merge kpettersson@bk-internal:/home/bk/mysql-4.1-maint
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.1-maint


mysys/mf_iocache.c:
  Auto merged
2007-01-11 14:11:58 +01:00
unknown
9397ff2a7d Merge kpdesk.mysql.com:/home/thek/dev/mysql-4.0-maint
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.1-maint


mysys/mf_iocache.c:
  Auto merged
mysys/my_read.c:
  Auto merged
mysys/my_seek.c:
  Auto merged
2007-01-11 14:04:01 +01:00
unknown
b88f53e74e Merge naruto.:C:/cpp/bug24751/my41-bug24751
into  naruto.:C:/cpp/mysql-4.1-maint
2007-01-11 13:13:06 +01:00
unknown
2cbccbfb0c Bug#24751 - Possible infinit loop in init_io_cache() when insufficient memory
- When cache memory can't be allocated size is recaclulated using 3/4 of
  the requested memory. This number is rounded up to the nearest 
  min_cache step. 
  However with the previous implementation the new cache size might
  become bigger than requested because of this rounding and thus we get
  an infinit loop.
- This patch fixes this problem by ensuring that the new cache size
  always will be smaller on the second and subsequent iterations until
  we reach min_cache.


mysys/mf_iocache.c:
  - Added mask to cachesize to ensure that algorithm always produce a 
    smaller cache size than current, until we reach 'min_cache' size.
2007-01-11 09:40:17 +01:00
unknown
ada9d3f2c8 Merge kpdesk.mysql.com:/home/thek/dev/test23010/my40-bug23010
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.0
2007-01-09 14:37:52 +01:00
unknown
d7e9fd07ef Cset exclude: thek@kpdesk.mysql.com|ChangeSet|20061106104152|07628
mysys/mf_iocache.c:
  Exclude
mysys/my_seek.c:
  Exclude
2007-01-09 12:28:46 +01:00
unknown
449450804b Added support for /etc/mysql after /etc in the search path for my.cnf
bug #25104


mysys/default.c:
  Added support for /etc/mysql after /etc in the search path for my.cnf
2006-12-15 12:25:09 -08:00
unknown
fbd4378b85 Bug#10608 mysqladmin breaks on "database" variable in my.cnf
- Add printout of "Warning" or "Note" for non error messages in default_reporter
 - Add test for the above in new mysqladmin.test


mysql-test/mysql-test-run.pl:
  Add support for mysqladmin to mysql-test-run.pl
mysys/my_getopt.c:
  Add printout of Warning: or Info: in 'default_reporter', this
  will make the user aware of the problem but can filter it
  as a warning or note.
mysql-test/r/mysqladmin.result:
  New BitKeeper file ``mysql-test/r/mysqladmin.result''
mysql-test/t/mysqladmin.test:
  New BitKeeper file ``mysql-test/t/mysqladmin.test''
2006-11-10 13:25:10 +01:00
unknown
94a2b704a0 Merge kpdesk.mysql.com:/home/thek/dev/bug23010/my40-bug23010
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.0-maint
2006-11-06 15:40:43 +01:00
unknown
51a360a005 Bug#23010 _my_b_read() passing illegal file handles to my_seek()
- The io cache flag seek_not_done was not set properly in the 
  reinit_io_cache function call and this led my_seek to be called
  desipite an invalid file handle.
- Added a test in reinit_io_cache to ensure we have a valid file 
  handle before setting seek_not_done flag.


mysys/mf_iocache.c:
  Added a test to only trigger my_seek function calls if we have
  a valid file descriptor.
mysys/my_seek.c:
  Refactored incomplete condition into an assertion. This also ensures
  that variable newpos is initialized properly.
2006-11-06 11:41:52 +01:00
unknown
65e3646258 Fix merge collision. 2006-11-02 18:27:52 -05:00
unknown
e1a722b2d3 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint


configure.in:
  Auto merged
mysql-test/t/ps.test:
  Auto merged
sql/handler.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/table.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
myisam/sort.c:
  Manual merge.
mysql-test/r/innodb_mysql.result:
  Manual merge.
mysql-test/t/innodb_mysql.test:
  Manual merge.
mysys/mf_iocache.c:
  Manual merge.
2006-11-02 17:27:42 -05:00
unknown
4868875cec Bug#22828 complementary patch:
- 'false' not defined in C, use FALSE instead.


mysys/my_lock.c:
  Fixed error in windows built:
  'false' not defined in C, use FALSE instead.
2006-11-02 13:33:26 +01:00
unknown
2d1215f4c6 Merge kpdesk.mysql.com:/home/thek/dev/bug22828/my41-bug22828
into  kpdesk.mysql.com:/home/thek/dev/mysql-4.1-maint


mysys/my_chsize.c:
  Auto merged
2006-11-01 09:24:57 +01:00
unknown
23061beb73 Bug#22828 _my_b_read() ignores return values for my_seek() calls
- Because my_seek actually is capable of returning an error code we should
  exploit that in the best possible way.
- There might be kernel errors or other errors we can't predict and capturing
  the return value of all system calls gives us better understanding of
  possible errors.


mysys/mf_iocache.c:
  - Added check on return value for my_seek
  - Added comments
mysys/my_chsize.c:
  - Added check on return value for my_seek
  - Added comments
mysys/my_lock.c:
  - Added check on return value for my_seek
  - Added comments
mysys/my_seek.c:
  - Added comments
2006-10-31 09:26:16 +01:00
unknown
f623ff351a Merge siva.hindu.god:/usr/home/tim/m/bk/b4053/41
into  siva.hindu.god:/usr/home/tim/m/bk/tmp/mrgOct16/41


mysys/my_read.c:
  Manual merge
2006-10-16 20:01:30 -06:00
unknown
f3258af513 Merge siva.hindu.god:/usr/home/tim/m/bk/b4053/40
into  siva.hindu.god:/usr/home/tim/m/bk/tmp/mrgOct16/40


mysys/my_read.c:
  Manual merge
2006-10-16 19:59:15 -06:00
unknown
679b5848f3 Merge chilla.local:/home/mydev/mysql-4.1-bug8283
into  chilla.local:/home/mydev/mysql-4.1-bug8283-one


myisam/mi_check.c:
  Auto merged
myisam/mi_packrec.c:
  Auto merged
myisam/sort.c:
  Auto merged
mysql-test/r/myisam.result:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Manual merge
mysql-test/t/myisam.test:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Manual merge
2006-10-09 19:40:16 +02:00
unknown
3109da7719 Bug#8283 - OPTIMIZE TABLE causes data loss
OPTIMIZE TABLE with myisam_repair_threads > 1 performs a non-quick 
parallel repair. This means that it does not only rebuild all 
indexes, but also the data file.

Non-quick parallel repair works so that there is one thread per 
index. The first of the threads rebuilds also the new data file.

The problem was that all threads shared the read io cache on the
old data file. If there were holes (deleted records) in the table,
the first thread skipped them, writing only contiguous, non-deleted
records to the new data file. Then it built the new index so that
its entries pointed to the correct record positions. But the other
threads didn't know the new record positions, but put the positions
from the old data file into the index.

The new design is so that there is a shared io cache which is filled
by the first thread (the data file writer) with the new contiguous
records and read by the other threads. Now they know the new record
positions.

Another problem was that for the parallel repair of compressed
tables a common bit_buff and rec_buff was used. I changed it so
that thread specific buffers are used for parallel repair.

A similar problem existed for checksum calculation. I made this
multi-thread safe too.


include/my_sys.h:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Redesign of io_cache_share.
include/myisam.h:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Redesign of checksum calculation in mi_check.c.
  'calc_checksum' is now in myisamdef.h:st_mi_sort_param.
myisam/mi_check.c:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Implemented a new parallel repair design.
  Using a synchronized shared read/write cache.
  Allowed for thread specific bit_buff, rec_buff, and calc_checksum.
myisam/mi_open.c:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Added DBUG output.
myisam/mi_packrec.c:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Allowed for thread specific bit_buff and rec_buff.
myisam/myisamdef.h:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Commented on checksum calculation variables.
  Allowed for thread specific bit_buff.
  Added DBUG output for better table crash detection.
myisam/sort.c:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Added implications of the new parallel repair design.
  Renamed 'info' -> 'sort_param'.
  Added DBUG output.
mysql-test/r/myisam.result:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Added test results.
mysql-test/t/myisam.test:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Added test cases.
mysys/mf_iocache.c:
  Bug#8283 - OPTIMIZE TABLE causes data loss
  Redesign of io_cache_share.
  We do now allow a writer to synchronize himself with the
  readers of a shared cache. When all threads join in the lock,
  the writer copies the data from his write buffer to the shared
  read buffer.
2006-10-09 19:26:55 +02:00
unknown
350ec8b198 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/svoj/devel/mysql/merge/mysql-4.1-engines


mysql-test/r/myisam.result:
  Auto merged
mysql-test/t/myisam.test:
  Auto merged
sql/table.cc:
  Auto merged
2006-10-02 14:42:12 +05:00
unknown
7d915f0193 BUG#21617 - crash when selecting from merge table with inconsistent indexes
Crash may happen when selecting from a merge table that has underlying
tables with less indexes than in a merge table itself.

If number of keys in merge table is not bigger than requested key number,
return error.


myisammrg/myrg_open.c:
  Store min(number of keys) in m_info instead of number of keys in last
  underlying table.
myisammrg/myrg_queue.c:
  Return error if inx passed to _myrg_init_queue function is not less
  than number of keys.
mysql-test/r/merge.result:
  A test case for bug#21617.
mysql-test/t/merge.test:
  A test case for bug#21617.
mysys/queues.c:
  Replaced annoying ifndef DBUG_OFF with DBUG_ASSERT, fixed coding style.
  The problem was that having queue overrun in debug build was hidden
  with this ifdef.
2006-09-28 22:10:06 +05:00
unknown
ac1a030e34 Merge siva.hindu.god:/usr/home/tim/m/bk/tmp/40
into  siva.hindu.god:/usr/home/tim/m/bk/tmp/41


mysys/my_lwrite.c:
  Auto merged
mysys/my_pread.c:
  Auto merged
mysys/my_read.c:
  Auto merged
mysys/my_write.c:
  Auto merged
2006-09-14 23:20:13 -06:00
unknown
d7a1f97c15 Bug #4053: too many of "error 1236: 'binlog truncated in the middle of event' from master"
- Fix my_read/my_write to handle return values from read/write correctly
- Add debugging 'deprecated function' warning to my_lread/my_lwrite
- Add debugging 'error, read/write interrupt not handled' warning to my_quick_read/my_quick_write

There is no test case associated with these changes.  However, this is a conservative change,
and no repeatable test case is available.


mysys/my_lread.c:
  Warn about using deprecated function.
mysys/my_lwrite.c:
  Warn about using deprecated function.
mysys/my_pread.c:
  Handle interrupted read() or write() (EINTR) properly
mysys/my_quick.c:
  Warn about interrupted read() or write(), which is not
  handled by my_quick_read() or my_quick_write().
mysys/my_read.c:
  Handle interrupted read() (EINTR) properly
mysys/my_write.c:
  Handle interrupted write() (EINTR) properly
2006-09-14 23:19:24 -06:00
unknown
da5e2660b7 Bug #4053: too many of "error 1236: 'binlog truncated in the middle of event' from master"
- Detect read failure in my_read_charset_file


mysys/charset.c:
  Use my_read instead of read(), and detect read failure, in my_read_charset_file()
2006-09-14 21:06:14 -06:00
unknown
e44024d473 bug #12620 (UTF-8 indexing causes ER_NO_KEYFILE error)
The problem is that on some Mac OS X-es the file writing/reading
call with zero bytes to read/write returns error.
So here i try to eliminate that kinds of calls.


myisam/mi_check.c:
  zero length copying avoided
mysys/my_chsize.c:
  no file operations if it's not necessary
2006-09-04 19:47:24 +05:00
unknown
3cb03194fd Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug04053/my41-bug04053
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1-maint
2006-08-31 12:45:49 -04:00
unknown
8fb0f8a249 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug04053/my40-bug04053
into  zippy.cornsilk.net:/home/cmiller/work/mysql/bug04053/my41-bug04053


mysys/my_read.c:
  Auto merged
2006-08-30 17:33:28 -04:00