Opened 16 years ago
Last modified 21 months ago
#347 assigned enhancement
Provide public API for replication
Reported by: | Olly Betts | Owned by: | Richard Boulton |
---|---|---|---|
Priority: | normal | Milestone: | 2.0.0 |
Component: | Library API | Version: | SVN trunk |
Severity: | normal | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Operating System: | All |
Description
struct ReplicationInfo
should probably be replaced by getter
methods of DatabaseMaster and DatabaseReplica (for API consistency with existing classes and to permit other statistics to be added in the future without ABI breakage).
Setting milestone:1.1.1 for now - I'm currently intending to mark replication as "experimental" for 1.1.0.
Change History (11)
comment:1 by , 16 years ago
Component: | Other → Library API |
---|
comment:2 by , 16 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:3 by , 16 years ago
Milestone: | 1.1.1 → 1.1.2 |
---|
comment:4 by , 15 years ago
Priority: | normal → highest |
---|
This is really a blocker for releasing with replication, and having to disable that for 1.2.0 would be a shame and probably somewhat fiddly. Also there's a partial patch. Hence setting highest priority.
comment:6 by , 15 years ago
After some discussion on IRC, we've decided that the replication API isn't ready for a stable release yet. I have several significant concerns about it:
- the ReplicationInfo struct, as described in this ticket.
- there's no way to monitor progress of the replication operation through the API
- the file descriptor used for the replication communication is exposed via the API, which is a potential portability problem, and also simply rather ugly.
- the API generally offers little control over replication; it's really only designed for the command line scripts to use.
Rather than commit to supporting this API for several years, we'll remove it from the API now. Replication functionality will still be available in the 1.2.0 release via the scripts in bin, which have been tested in production environments and work well.
comment:7 by , 15 years ago
Milestone: | 1.1.4 → 1.2.x |
---|
comment:8 by , 15 years ago
Priority: | highest → normal |
---|---|
Summary: | Replace struct ReplicationInfo with getters → Provide public API for replication |
Type: | defect → enhancement |
comment:10 by , 10 years ago
Milestone: | 1.3.x → 1.4.x |
---|
Not a blocker for 1.4.0.
Exposing the fd is potentially an issue on Windows (where sockets are type SOCKET
, which is essentially a pointer so may not fit in an int).
If we could just expose it as an opaque handle which fits in an int, we could map internally for such platforms.
comment:11 by , 21 months ago
Milestone: | 1.4.x → 2.0.0 |
---|
I've already started work on a patch for this, so assigning to me - it'll probably need some review and replication may well need other changes, so marking it as "experimental" is a good plan anyway.