Back to bug 1399600
| Who | When | What | Removed | Added |
|---|---|---|---|---|
| wibrown | 2016-12-12 22:40:08 UTC | CC | wibrown | |
| Noriko Hosoi | 2016-12-16 17:47:26 UTC | CC | mreynolds | |
| Assignee | nhosoi | mreynolds | ||
| Status | NEW | ASSIGNED | ||
| Status | ASSIGNED | POST | ||
| CC | nhosoi | |||
| Flags | needinfo?(mreynolds) | |||
| Tom Lavigne | 2017-01-06 18:56:14 UTC | Flags | needinfo?(mreynolds) | |
| CC | tlavigne | |||
| Noriko Hosoi | 2017-01-10 00:24:12 UTC | Status | POST | MODIFIED |
| Fixed In Version | 389-ds-base-1.2.11.15-86.el6 | |||
| errata-xmlrpc | 2017-01-10 00:28:50 UTC | Status | MODIFIED | ON_QA |
| Simon Pichugin | 2017-01-10 12:39:29 UTC | Status | ON_QA | VERIFIED |
| CC | spichugi | |||
| Noriko Hosoi | 2017-01-10 20:18:22 UTC | Doc Text | Bug: There were 2 VLV index issues. 1) When a VLV index is removed, it did not call dblayer_erase_index_file_nolock, which removes the physical index file as well as a back pointer set to the dblayer handle. The back pointer is scanned at the backend close time where the garbage address is used to close the already removed vlv index. 2) VLV plugin callbacks are registered in vlv_init. The function could be called multiple times without unregster the VLV plugin callbacks, e.g., from bulk import, which reopens the backend instance. If create an instance and a vlv index, then initialize the database with bulk import, 2 VLV index callbacks are registered. The first set points the old instance address, which is already freed. Fix: 1) When a VLV index is removed, it calls dblayer_erase_index_file_nolock to clean up the physical index file and a back pointer in the dblayer handle. 2) Before registering VLV plugin callbacks, calling unregister callbacks to make sure cleaning up the existing callbacks. Result: No more VLV related crashes observed. | |
| Doc Type | If docs needed, set a value | Bug Fix | ||
| Marc Muehlfeld | 2017-01-11 17:20:29 UTC | Docs Contact | mmuehlfe | |
| Marc Muehlfeld | 2017-01-19 07:46:19 UTC | Doc Text | Bug: There were 2 VLV index issues. 1) When a VLV index is removed, it did not call dblayer_erase_index_file_nolock, which removes the physical index file as well as a back pointer set to the dblayer handle. The back pointer is scanned at the backend close time where the garbage address is used to close the already removed vlv index. 2) VLV plugin callbacks are registered in vlv_init. The function could be called multiple times without unregster the VLV plugin callbacks, e.g., from bulk import, which reopens the backend instance. If create an instance and a vlv index, then initialize the database with bulk import, 2 VLV index callbacks are registered. The first set points the old instance address, which is already freed. Fix: 1) When a VLV index is removed, it calls dblayer_erase_index_file_nolock to clean up the physical index file and a back pointer in the dblayer handle. 2) Before registering VLV plugin callbacks, calling unregister callbacks to make sure cleaning up the existing callbacks. Result: No more VLV related crashes observed. | Virtual list view-related problems have been fixed Previously, when removing a virtual list view (VLV) index, the "dblayer_erase_index_file_nolock()" function was not called. Thus, the physical index file and the back pointer set to the *dblayer* handle were not removed. Consequently, Directory Server terminated unexpectedly. This fix updates the code and the "dblayer_erase_index_file_nolock()" function is now called when removing a VLV index. In addition, the "vlv_init()" function previously could be called multiple times without unregistering VLV plug-in callbacks. As a consequence, Directory Server sometimes terminated unexpectedly. With this update, callbacks are now unregistered. As a result, Directory Server no longer terminates unexpectedly in the described situations. |
| Flags | needinfo?(mreynolds) | |||
| errata-xmlrpc | 2017-03-21 00:56:33 UTC | Flags | needinfo?(mreynolds) | |
| Status | VERIFIED | RELEASE_PENDING | ||
| errata-xmlrpc | 2017-03-21 10:24:02 UTC | Status | RELEASE_PENDING | CLOSED |
| Resolution | --- | ERRATA | ||
| Last Closed | 2017-03-21 06:24:02 UTC |
Back to bug 1399600