Closed Bug 508974 Opened 15 years ago Closed 15 years ago

Create migration script from Bouncer database to Mirror Brain database

Categories

(Webtools :: Bouncer, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: morgamic, Assigned: griswolf)

References

Details

Attachments

(1 file, 1 obsolete file)

In order to test MB we need to set up our products in MB and slam it.  First part of that is attaining parity between the two in terms of size and volume.

Steps:
1. map bouncer tables to mb tables (flatten if necessary)
2. create corresponding entries for mirrors, weights, products, etc. in the MB db
MB SQL is here:
http://svn.mirrorbrain.org/svn/mirrorbrain/trunk/sql/schema-mysql.sql

Frank - we'll talk about this next week.
Blocks: 482160
Frank - how are things progressing?  Can you give an estimate on when you'll be done?
We are going to do this in three parts:
Part 1: Use script (attached) to convert the bouncer data in situ to mirrorbrain structure, all within mysql. This creates several tables and populates three of them: file, server, file_server (a mapping table)

Part 2: Use mirror-brain scripts pulled from their svn to create and partly populate the postgres side:
  URL: http://svn.mirrorbrain.org/svn/mirrorbrain/trunk/sql/schema-postgresql.sql
  URL: http://svn.mirrorbrain.org/svn/mirrorbrain/trunk/sql/initialdata-postgresql.sql

Part 3: Convert the data from part 1 to postgres
Attached is Python script that will migrate a MySQL based Bouncer instance to the schema of MirrorBrain running under PostgreSQL.

It is likely that some tweaks are going to be necessary as we learn more about MirrorBrain.

> ./bouncer2mb.py --help
Bouncer to MirrorBrain 0.1
	    --bouncerDatabaseHost
		the hostname of the bouncer database server (default: localhost)
	    --bouncerDatabaseName
		the name of the database within the server (default: bouncer)
	    --bouncerDatabasePassword
		the password for the database user (default: )
	    --bouncerDatabaseUserName
		the user name for the database servers (default: root)
	-?, --help
		print this list
	    --logFileErrorLoggingLevel
		logging level for the log file (10 - DEBUG, 20 - INFO, 30 - WARNING, 40 - ERROR, 50 - CRITICAL) (default: 10)
	    --logFileLineFormatString
		python logging system format for log file entries (default: %(asctime)s %(levelname)s - %(message)s)
	    --logFileMaximumBackupHistory
		maximum number of log files to keep (default: 50)
	    --logFileMaximumSize
		maximum size in bytes of the log file (default: 1000000)
	    --logFilePathname
		full pathname for the log file (default: ./bouncer2mb.log)
	    --mirrorBrainDatabaseHost
		the hostname of the bouncer database server (default: localhost)
	    --mirrorBrainDatabaseName
		the name of the database within the server (default: mirrorbrain)
	    --mirrorBrainDatabasePassword
		the password for the database user (default: )
	    --mirrorBrainDatabaseUserName
		the user name for the database servers (default: root)
	    --stderrErrorLoggingLevel
		logging level for the logging to stderr (10 - DEBUG, 20 - INFO, 30 - WARNING, 40 - ERROR, 50 - CRITICAL) (default: 20)
	    --stderrLineFormatString
		python logging system format for logging to stderr (default: %(asctime)s %(levelname)s - %(message)s)
Comment on attachment 403505 [details]
Converts bouncer to mirror-brain schema, within mysql database

replaced by python script also attached
Attachment #403505 - Attachment is obsolete: true
Attachment #403573 - Attachment is patch: true
Attachment #403573 - Attachment mime type: application/x-tar → text/plain
Is this bug "FIXED"?
This bug isn't "FIXED" until the script is executed and we work out any changes that need to be made.  I'm just waiting for someone to use it and tell me how it went...
We have decided in late 2009 that Bouncer is currently serving our needs relatively well and we won't switch to MirrorBrain at this time.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: