Oh, sorry, my fault. That clearly wasn't a merge request.
Paul's Infinispan stuff got me all excited!
On 4/12/11 3:19 AM, Kabir Khan wrote:
Ooops, that was not a merge request :-) I should have been clearer.
Anyway, I'll make any modifications subsequent commits
On 12 Apr 2011, at 03:24, Brian Stansberry wrote:
> Nice! Merged.
>
> On 4/11/11 3:03 PM, Kabir Khan wrote:
>> My
https://github.com/kabir/jboss-as/commits/JBAS-8680_JBAS-9178 branch contains
the history stuff. I'll be attending the JAX conference in London tomorrow, but will
do the command line parts around that, along with any suggestions for what I have done for
the history part.
>>
>> The definition of 'successfully booted' is more strict in standalone and
triggered by the BootstrapListener, in domain mode it is triggered in
HostControllerService.start() and DomainControllerService.start(). Once the server is
successfully booted we back up the xml to
>> .initial - this is only ever done once, this file does not get overwritten by us
ever (unless a user deletes it)
>> .original - this is done for each restart
>> .last - contains the last version of the file
>>
>> Then each run gets a folder, for standlone it is
>> standalone/configuration/standalone_xml/current
>> Each up date results in a new copy of the file:
>> standalone.v1.xml
>> standalone.v2.xml
>> etc.
>> We keep the last 100 copies of this. So once we get to v101, we delete v1, etc.
>> domain.xml and host.xml work the same, just different names.
>>
>> Once the server is restarted, and if the
standalone/configuration/standalone_xml/current directory exists, it is copied to
standalone/configuration/standalone_xml/<timestamp-of-current-restart>. These get
deleted automatically after a month .
>>
>> When starting the server we create a
>> standalone/configuration/standalone_xml/snapshots/<timestampt>.xml file
(this is the same as the .original file, but will never get overwritten)
>>
>> There are some operations to manage snapshots:
>> [localhost:9999 /] :take-snapshot
>> {
>> "outcome" => "success",
>> "result" => {"name" =>
"/Users/kabir/sourcecontrol/jboss-as7/git/jboss-as/build/target/jboss-7.0.0.Beta3-SNAPSHOT/standalone/configuration/standalone_xml/snapshot/20110411-204125317.xml"},
>> "compensating-operation" => undefined
>> }
>> #This ^ creates another timestamped version in the
standalone/configuration/standalone_xml/snapshots/ folder
>>
>> [localhost:9999 /] :list-snapshots
>> {
>> "outcome" => "success",
>> "result" => {
>> "directory" =>
"/Users/kabir/sourcecontrol/jboss-as7/git/jboss-as/build/target/jboss-7.0.0.Beta3-SNAPSHOT/standalone/configuration/standalone_xml/snapshot",
>> "names" => [
>> "20110411-204010866.xml",
>> "20110411-204015241.xml",
>> "20110411-204123984.xml",
>> "20110411-204124693.xml",
>> "20110411-204125317.xml"
>> ]
>> },
>> "compensating-operation" => undefined
>> }
>> #This ^ lists all the snapshots on the server
>>
>> [localhost:9999 /] :delete-snapshot(name=BOGUS)
>> {
>> "outcome" => "failed",
>> "failure-description" => "No files beginning with
'BOGUS' found in
/Users/kabir/sourcecontrol/jboss-as7/git/jboss-as/build/target/jboss-7.0.0.Beta3-SNAPSHOT/standalone/configuration/standalone_xml/snapshot"
>> }
>> [localhost:9999 /] :delete-snapshot(name=20110411-20401)
>> {
>> "outcome" => "failed",
>> "failure-description" => "Ambiguous name
'20110411-20401' in
/Users/kabir/sourcecontrol/jboss-as7/git/jboss-as/build/target/jboss-7.0.0.Beta3-SNAPSHOT/standalone/configuration/standalone_xml/snapshot:
[20110411-204010866.xml, 20110411-204015241.xml]"
>> }
>> [localhost:9999 /] :delete-snapshot(name=20110411-2040108)
>> {
>> "outcome" => "success",
>> "result" => undefined,
>> "compensating-operation" => undefined
>> }
>> #This ^ deletes a snapshot using its name, only enough of the name to uniquely
identify a snapshot is needed.
>>
>> These operations exist on the root of standalone, domain and host.
>>
>> On 11 Apr 2011, at 13:13, Kabir Khan wrote:
>>
>>>
>>> On 8 Apr 2011, at 17:54, Kabir Khan wrote:
>>>
>>>>
>>>> On 8 Apr 2011, at 17:42, Kabir Khan wrote:
>>>>>> A more important question is what constitutes a clean server
boot? We'll need some callback in the persister to be triggered when that happens
(since ConfigurationPersister.store()) is not called until people start changing the
model). Some thoughts about when this could get called are either:
>>>>>> -Once we have parsed the config file into updates and
successfully executed those in the model controller
>>>>>> -The above but all services have successfully started (similar to
what we do in ApplicationServerService.BootstrapListener()). I think a problem with this
is that people could have started issuing management commands once the protocol + handlers
are up and running before all the other services are up and running.
>>> I've gone with this option in standalone mode, writes to the model are
not backed up until the standalone server has successfully booted.
>>> Now, the question is when the domain is considered to be properly started?
>>> -Once we are ready to start the servers? Bad config in host/domain here could
screw up startup for one or more servers.
>>> -Once all the servers have been started successfully? If a server does not
start for whatever reason we won't get the domain files backed up.
>>>
>>> For the command line stuff, I am adding this extra system property for
standalone mode (default value is 'standalone.xml':
>>> -Djboss.server.config.file
>>>
>>> and these two extra possible properties for the command line for domain
mode:
>>> -Djboss.domain.config.host
>>> -Djboss.domain.config.domain
>>>
>>> The default values will be 'host.xml' and 'domain.xml'.
>>> If specified it can either be a full path:
>>> -Djboss.domain.config.host=/somewhere/blah/some-host.xml
>>>
>>> Or if a simple name, a file in jboss.domain.config.dir:
>>> -Djboss.domain.config.host=special-host.xml
>>>
>>> Or any of the backed up files using the known prefixes:
>>> -Djboss.domain.config.host=initial
>>> -Djboss.domain.config.host=last
>>> -Djboss.domain.config.host=original
>>> -Djboss.domain.config.host=v4
>>> _______________________________________________
>>> jboss-as7-dev mailing list
>>> jboss-as7-dev(a)lists.jboss.org
>>>
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>>
>>
>> _______________________________________________
>> jboss-as7-dev mailing list
>> jboss-as7-dev(a)lists.jboss.org
>>
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>
>
> --
> Brian Stansberry
> Principal Software Engineer
> JBoss by Red Hat
> _______________________________________________
> jboss-as7-dev mailing list
> jboss-as7-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev