From c02246c461007ae32297a43c2dca90c0ad909dab Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 8 Feb 2006 15:03:09 +0300 Subject: [PATCH] Post merge-fixes. Apply a patch by Jonas for NDB diskdata. mysql-test/r/sp-code.result: Fix a test result after merge: 94 and 95 are SQLCOM codes of SQLCOM_CALL. New commands were added in 5.1 so SQLCOM_CALL got renumbered. storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp: Apply second patch by Jonas to make NDB diskdata work on systems without O_DIRECT support. --- mysql-test/r/sp-code.result | 4 ++-- storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/mysql-test/r/sp-code.result b/mysql-test/r/sp-code.result index c9fe170dda6..bb0adae6bab 100644 --- a/mysql-test/r/sp-code.result +++ b/mysql-test/r/sp-code.result @@ -155,11 +155,11 @@ Pos Instruction 0 stmt 9 "drop temporary table if exists sudoku..." 1 stmt 1 "create temporary table sudoku_work ( ..." 2 stmt 1 "create temporary table sudoku_schedul..." -3 stmt 95 "call sudoku_init(" +3 stmt 94 "call sudoku_init(" 4 jump_if_not 7(8) p_naive@0 5 stmt 4 "update sudoku_work set cnt = 0 where ..." 6 jump 8 -7 stmt 95 "call sudoku_count(" +7 stmt 94 "call sudoku_count(" 8 stmt 6 "insert into sudoku_schedule (row,col)..." 9 set v_scounter@2 0 10 set v_i@3 1 diff --git a/storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp b/storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp index 41a705fea2d..e0324c2c8ea 100644 --- a/storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp +++ b/storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp @@ -431,6 +431,7 @@ void AsyncFile::openReq(Request* request) m_fs.EXECUTE_DIRECT(block, GSN_FSWRITEREQ, signal, FsReadWriteReq::FixedLength + 1); + retry: Uint32 size = request->par.open.page_size; char* buf = (char*)m_page_ptr.p; while(size > 0){ @@ -457,7 +458,7 @@ void AsyncFile::openReq(Request* request) close(theFd); theFd = ::open(theFileName.c_str(), new_flags, mode); if (theFd != -1) - continue; + goto retry; } #endif close(theFd);