RT internals

Hi does any one can point me to some reference that will give me how RT works internally (Trouble shooting purposes) I need to know things like

  1. where all this configurations are stored in RT (custom fields, actual Scripts, templates, Attachemnt etc)

  2. Does the RT keep all the modification that I do using root dash board (or any other) in the DB

  3. if I need to migrate to a new installation (with out upgrade) how would I go about this task (would it be as just to create the new instance and configure all the plugins as per the current and just do a backup and restore on the db)

  4. What would be the consequences if I try to change “webdomain” (problem is our organization domain has changed since the commission of RT)

  5. I have below problem

“Couldn’t find Ticket for reminder 1656. Please contact administrator.”

though I have put this resolve reminder when the ticket resolved some times these messages keeps pooping up and I have to change the status manually from DB. I have tested this script and for me works perfectly.

I tried to trace the ticket id by going through the DB from backebnd but I am unable to put tickets and reminders (how do I find the relations)

Appreciate any help that you can provide

Thanks and Regards

Hi does any one can point me to some reference that will give me how RT
works internally (Trouble shooting purposes) I need to know things like

  1. where all this configurations are stored in RT (custom fields, actual
    Scripts, templates, Attachemnt etc)

In the database. The schema isn’t that complicated; although some of
the configuration data is stored as data structures in blob columns,
which can make it a bit tricky to unpick.

  1. Does the RT keep all the modification that I do using root dash board
    (or any other) in the DB

Yes.

  1. if I need to migrate to a new installation (with out upgrade) how
    would I go about this task (would it be as just to create the new
    instance and configure all the plugins as per the current and just do a
    backup and restore on the db)

Yes. I’ve done that before. As long as you’re not changing the
software versions, just copying to a new system, it should be fine.

  1. What would be the consequences if I try to change “webdomain”
    (problem is our organization domain has changed since the commission of RT)

That’s just an RT_SiteConfig setting. I think you can comfortably
change it. You might want to check that the RT and mail configuration
is set to be happy with both domains, to catch any requests for the old
name.

  1. I have below problem

“Couldn’t find Ticket for reminder 1656. Please contact administrator.”

though I have put this resolve reminder when the ticket resolved some
times these messages keeps pooping up and I have to change the status
manually from DB. I have tested this script and for me works perfectly.

I tried to trace the ticket id by going through the DB from backebnd but
I am unable to put tickets and reminders (how do I find the relations)

Appreciate any help that you can provide

It’s much easier to follow these things, I find, by using the RT Perl
API. It’s usually quite easy to write small perl scripts to inspect
particular parts of the database, and the API does the unpicking of the
database schema so you don’t have to.

perldoc RT::Ticket and its friends will help you.

Tim

The Wellcome Trust Sanger Institute is operated by Genome Research
Limited, a charity registered in England with number 1021457 and a
company registered in England with number 2742969, whose registered
office is 215 Euston Road, London, NW1 2BE.

Hi Tim, thank you for the reply, bigest problem that I have not been a perl programer, hope you don’t mind me asking bit more clarifications

I am using Oracle as my database and I could not make head or tail of the relations :slight_smile: guess need to sit by this and real go through the DB

  1. if I need to migrate to a new installation (with out upgrade) how
    would I go about this task (would it be as just to create the new
    instance and configure all the plugins as per the current and just do a
    backup and restore on the db)

Yes. I’ve done that before. As long as you’re not changing the
software versions, just copying to a new system, it should be fine.

Asanka => so this is not the way to do an upgrade? is it because there could be DB changes in the new release?

Thanks and Best RegardsFrom: Tim Cutts tjrc@sanger.ac.uk
To: Asanka Gunasekera asanka_gunasekera@yahoo.co.uk
Cc: “rt-users@lists.bestpractical.comrt-users@lists.bestpractical.com
Sent: Tuesday, 11 September 2012, 2:11
Subject: Re: [rt-users] RT internals

Hi does any one can point me to some reference that will give me how RT
works internally (Trouble shooting purposes) I need to know things like

  1. where all this configurations are stored in RT (custom fields, actual
    Scripts, templates, Attachemnt etc)

In the database. The schema isn’t that complicated; although some of
the configuration data is stored as data structures in blob columns,
which can make it a bit tricky to unpick.

  1. Does the RT keep all the modification that I do using root dash board
    (or any other) in the DB

Yes.

  1. if I need to migrate to a new installation (with out upgrade) how
    would I go about this task (would it be as just to create the new
    instance and configure all the plugins as per the current and just do a
    backup and restore on the db)

Yes. I’ve done that before. As long as you’re not changing the
software versions, just copying to a new system, it should be fine.

  1. What would be the consequences if I try to change “webdomain”
    (problem is our organization domain has changed since the commission of RT)

That’s just an RT_SiteConfig setting. I think you can comfortably
change it. You might want to check that the RT and mail configuration
is set to be happy with both domains, to catch any requests for the old
name.

  1. I have below problem

“Couldn’t find Ticket for reminder 1656. Please contact administrator.”

though I have put this resolve reminder when the ticket resolved some
times these messages keeps pooping up and I have to change the status
manually from DB. I have tested this script and for me works perfectly.

I tried to trace the ticket id by going through the DB from backebnd but
I am unable to put tickets and reminders (how do I find the relations)

Appreciate any help that you can provide

It’s much easier to follow these things, I find, by using the RT Perl
API. It’s usually quite easy to write small perl scripts to inspect
particular parts of the database, and the API does the unpicking of the
database schema so you don’t have to.

perldoc RT::Ticket and its friends will help you.

Tim

The Wellcome Trust Sanger Institute is operated by Genome Research
Limited, a charity registered in England with number 1021457 and a
company registered in England with number 2742969, whose registered
office is 215 Euston Road, London, NW1 2BE.

Hi Tim, thank you for the reply, bigest problem that I have not been a
perl programer, hope you don’t mind me asking bit more clarifications

I am using Oracle as my database and I could not make head or tail of
the relations :slight_smile: guess need to sit by this and real go through the DB

I can’t help you with the Oracle stuff - MySQL is the only database I
really know in any detail.

  1. if I need to migrate to a new installation (with out upgrade) how
    would I go about this task (would it be as just to create the new
    instance and configure all the plugins as per the current and just do a
    backup and restore on the db)

Yes. I’ve done that before. As long as you’re not changing the
software versions, just copying to a new system, it should be fine.

Asanka => so this is not the way to do an upgrade? is it because there
could be DB changes in the new release?

There quite frequently are database updates in new releases. When
performing a major new release, what I do is:

Preamble: Disable incoming web requests and queue email to the RT
server (you don’t want to lose any ticket transactions during the upgrade)

  1. Shut RT down and copy the database to a new server (which is easy
    for me since I run the database in a virtual machine and can just clone
    the VM)

  2. Do the same for the web server, if it’s on a separate machine from
    the database.

  3. Perform the upgrade procedure, including any database updates
    required, on the new copy, and test it, in particular any local
    customisations you have in /opt/rt4/local.

  4. If everything’s working, shut down the old servers, and re-enable
    the web and email traffic, pointing to the new servers.

This is a fairly complex way of performing an upgrade, but it has the
advantage that you can easily back out of it if it goes wrong, and go
back to your old system, which is not simple if you do an in-place
upgrade of the live system.

Tim

The Wellcome Trust Sanger Institute is operated by Genome Research
Limited, a charity registered in England with number 1021457 and a
company registered in England with number 2742969, whose registered
office is 215 Euston Road, London, NW1 2BE.

Hi Tim thanks for the reply, the upgrade path that you have explain seem fairlly simple though consumes bit more time then in-place upgrade I believe but its safe to have the upper hand on fall back to the original system just in case if something to go wrong.

Thank you again Best Regards

AsankaFrom: Tim Cutts tjrc@sanger.ac.uk
To: Asanka Gunasekera asanka_gunasekera@yahoo.co.uk
Cc: “rt-users@lists.bestpractical.comrt-users@lists.bestpractical.com
Sent: Tuesday, 11 September 2012, 14:58
Subject: Re: [rt-users] RT internals

Hi Tim, thank you for the reply, bigest problem that I have not been a
perl programer, hope you don’t mind me asking bit more clarifications

I am using Oracle as my database and I could not make head or tail of
the relations :slight_smile: guess need to sit by this and real go through the DB

I can’t help you with the Oracle stuff - MySQL is the only database I
really know in any detail.

  1. if I need to migrate to a new installation (with out upgrade) how
    would I go about this task (would it be as just to create the new
    instance and configure all the plugins as per the current and just do a
    backup and restore on the db)

Yes. I’ve done that before. As long as you’re not changing the
software versions, just copying to a new system, it should be fine.

Asanka => so this is not the way to do an upgrade? is it because there
could be DB changes in the new release?

There quite frequently are database updates in new releases. When
performing a major new release, what I do is:

Preamble: Disable incoming web requests and queue email to the RT
server (you don’t want to lose any ticket transactions during the upgrade)

  1. Shut RT down and copy the database to a new server (which is easy
    for me since I run the database in a virtual machine and can just clone
    the VM)

  2. Do the same for the web server, if it’s on a separate machine from
    the database.

  3. Perform the upgrade procedure, including any database updates
    required, on the new copy, and test it, in particular any local
    customisations you have in /opt/rt4/local.

  4. If everything’s working, shut down the old servers, and re-enable
    the web and email traffic, pointing to the new servers.

This is a fairly complex way of performing an upgrade, but it has the
advantage that you can easily back out of it if it goes wrong, and go
back to your old system, which is not simple if you do an in-place
upgrade of the live system.

Tim

The Wellcome Trust Sanger Institute is operated by Genome Research
Limited, a charity registered in England with number 1021457 and a
company registered in England with number 2742969, whose registered
office is 215 Euston Road, London, NW1 2BE.