Modify

Ticket #8595 (closed Bugs: fixed)

Opened 11 months ago

Last modified 11 months ago

mapped_region::flush - invalid interpretation of async parameter (win32)

Reported by: voropaev_sg@… Owned by: igaztanaga
Milestone: To Be Determined Component: interprocess
Version: Boost 1.53.0 Severity: Problem
Keywords: flush async Cc:

Description

We had serious performance problem after transfer to boost version 1.53. The reason - bug in processing of "async" parameter of mapped_region::flush (windows version).

   else if(async && m_file_or_mapping_hnd != winapi::invalid_handle_value &&
           winapi::get_file_type(m_file_or_mapping_hnd) == winapi::file_type_disk)
  {
      return winapi::flush_file_buffers(m_file_or_mapping_hnd);
  }

So if async = true then flush function works in synchronous mode. I think the code must be:

else if(!async && ....

Sergey Voropaev

Attachments

Change History

comment:1 Changed 11 months ago by igaztanaga

Thanks for the report, just in time for Boost 1.54

comment:2 Changed 11 months ago by igaztanaga

  • Status changed from new to closed
  • Resolution set to fixed

(In [84390]) Fixes #8595

View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.