1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

BUG#24687 func_misc test fails on win64

- Use same precision (milliseconds) for all time functions
   used  when calculating time for pthread_cond_timedwait
 - Use 'GetSystemTimeAsFileTime' for both start and curr time


include/config-win.h:
  Move all defines for 'pthread_cond_timedwait' to my_pthread.h
include/my_global.h:
  Move all defines for 'pthread_cond_timedwait' to my_pthread.h
include/my_pthread.h:
  Redefine "struct timespec" to better suite the needs 
  of 'pthread_cond_timedwait' for windows implementation
  Add windows specific define for set_timespec_nsec
  Move all defines related to pthread_cond_timed wait to same file
  Declare union for reading FILETIME as __int64 with correct alignment
mysys/my_wincond.c:
  Use 'GetSystemTimeAsFileTime()' both for getting start and current time
  Use new members of "struct timespec"
  Make sure the calculated timeout value never exceeds the value
  passed to set_timespec/set_timespec_nsec
server-tools/instance-manager/guardian.cc:
  Use set_timespec macro
server-tools/instance-manager/instance.cc:
  Use set_timespec macro
This commit is contained in:
unknown
2006-12-14 15:23:44 +01:00
parent a63a66cb46
commit 29bcffd77e
6 changed files with 96 additions and 58 deletions

View File

@ -228,9 +228,8 @@ void Guardian_thread::run()
node= node->next;
}
timeout.tv_sec= time(NULL) + monitoring_interval;
timeout.tv_nsec= 0;
set_timespec(timeout, monitoring_interval);
/* check the loop predicate before sleeping */
if (!(shutdown_requested && (!(guarded_instances))))
thread_registry.cond_timedwait(&thread_info, &COND_guardian,