| Anonymous | Login | Signup for a new account | 2013-05-22 19:12 CEST | ![]() |
| Main | My View | View Issues | Change Log | Roadmap |
| View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | |||||||||||
| ID | Project | Category | View Status | Date Submitted | Last Update | |||||||
| 0003986 | OCaml | OCaml otherlibs | public | 2006-03-09 20:18 | 2012-08-02 08:51 | |||||||
| Reporter | mottl | |||||||||||
| Assigned To | ||||||||||||
| Priority | normal | Severity | feature | Reproducibility | always | |||||||
| Status | resolved | Resolution | suspended | |||||||||
| Platform | OS | OS Version | ||||||||||
| Product Version | 3.09.1 | |||||||||||
| Target Version | Fixed in Version | |||||||||||
| Summary | 0003986: Serialized bigarrays do not preserve sharing | |||||||||||
| Description | Even when marshalling functions are called with sharing of data allowed, bigarrays that share data due to "slice" and "sub" are not reconstructed in a semantically equivalent way. It's surely not that easy to efficiently implement extraction and reconstruction of the exact shared data ranges used by some bigarrays without including superfluous data. The "quick" solution of just including the whole initial data would, however, still be better than not have any sharing at all, which may lead to subtle bugs. I have attached a file that demonstrates the problem. It prints "2 42 42 42" but should print "2 42 42 2". | |||||||||||
| Tags | No tags attached. | |||||||||||
| Attached Files | ||||||||||||
Notes |
|
|
(0007862) xleroy (administrator) 2012-08-02 08:51 |
Six years later, we still don't have any answer to this feature wish: preserving this sharing would require either major changes to the marshaller (so that custom marshallers have somehow access to the re-sharing machinery) or reimplementing Bigarrays so that proxies are represented by OCaml data structures. Plus, there would be a potential problem with a large bigarray being marshalled in full while all the user asked was to marshal a small subarray. I'm "suspending" this PR. |
Issue History |
|||
| Date Modified | Username | Field | Change |
| 2006-03-09 20:18 | mottl | New Issue | |
| 2006-03-09 20:18 | mottl | File Added: no_big_sharing.ml | |
| 2006-03-29 16:27 | doligez | Status | new => acknowledged |
| 2012-06-21 20:16 | frisch | Category | OCaml general => OCaml otherlibs |
| 2012-07-11 16:43 | doligez | Target Version | => 4.01.0+dev |
| 2012-07-31 13:37 | doligez | Target Version | 4.01.0+dev => 4.00.1+dev |
| 2012-08-02 08:51 | xleroy | Note Added: 0007862 | |
| 2012-08-02 08:51 | xleroy | Severity | minor => feature |
| 2012-08-02 08:51 | xleroy | Status | acknowledged => resolved |
| 2012-08-02 08:51 | xleroy | Resolution | open => suspended |
| 2012-08-02 08:51 | xleroy | Target Version | 4.00.1+dev => |
| Copyright © 2000 - 2011 MantisBT Group |