You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by "Desimpel, Ignace" <Ig...@nuance.com> on 2013/02/07 10:39:03 UTC
Directory structure after upgrading 1.0.8 to 1.2.1
After upgrading from 1.0.8 I see that now the directory structure has changed and has a structure like <keyspace><columnfamily> (part of the 1.1.x migration).
But I also see that directories appear like <keyspace><columnfamily-old>, and the content of that 'old' directory is only one file <columnfamily-old.json>.
Questions :
Should this xxx-old.json file be in the other directory?
Should the extra directory <xxx-old> not be created?
Or was that intentionally done and is it allowed to remove these directories ( manually ... )?
Thanks
Re: Directory structure after upgrading 1.0.8 to 1.2.1
Posted by aaron morton <aa...@thelastpickle.com>.
I think it's a little more subtle that that https://issues.apache.org/jira/browse/CASSANDRA-5242
Cheers
-----------------
Aaron Morton
Freelance Cassandra Developer
New Zealand
@aaronmorton
http://www.thelastpickle.com
On 8/02/2013, at 10:21 PM, "Desimpel, Ignace" <Ig...@nuance.com> wrote:
> Yes it are new directories. I did some debugging …
> The Cassandra code is org.apache.cassandra.db.Directories::migrateFile.
> It is detecting that it is a manifest (based on the .json extension).
> But then it does not take in account that something like <MyColumnFamily-old.json> can exist. Then it is using <MyColumnFamily-old> as a directory name in a call to a function destDir = getOrCreate(ksDir, dirname, additionalPath), while it should be < MyColumnFamily>.
>
> So I guess that the cfname computation should be adapted to include the “-old.json” manifest files.
>
> Ignace
>
> From: aaron morton [mailto:aaron@thelastpickle.com]
> Sent: vrijdag 8 februari 2013 03:09
> To: user@cassandra.apache.org
> Subject: Re: Directory structure after upgrading 1.0.8 to 1.2.1
>
> the -old.json is an artefact of Levelled Compaction.
>
> You should see a non -old file in the current CF folder.
>
> I'm not sure what would have created the -old CF dir. Does the timestamp indicate it was created the time the server first started as a 1.2 node?
>
> Cheers
>
>
> -----------------
> Aaron Morton
> Freelance Cassandra Developer
> New Zealand
>
> @aaronmorton
> http://www.thelastpickle.com
>
> On 7/02/2013, at 10:39 PM, "Desimpel, Ignace" <Ig...@nuance.com> wrote:
>
>
> After upgrading from 1.0.8 I see that now the directory structure has changed and has a structure like <keyspace><columnfamily> (part of the 1.1.x migration).
> But I also see that directories appear like <keyspace><columnfamily-old>, and the content of that ‘old’ directory is only one file <columnfamily-old.json>.
>
> Questions :
> Should this xxx-old.json file be in the other directory?
> Should the extra directory <xxx-old> not be created?
> Or was that intentionally done and is it allowed to remove these directories ( manually … )?
>
> Thanks
RE: Directory structure after upgrading 1.0.8 to 1.2.1
Posted by "Desimpel, Ignace" <Ig...@nuance.com>.
Yes it are new directories. I did some debugging ...
The Cassandra code is org.apache.cassandra.db.Directories::migrateFile.
It is detecting that it is a manifest (based on the .json extension).
But then it does not take in account that something like <MyColumnFamily-old.json> can exist. Then it is using <MyColumnFamily-old> as a directory name in a call to a function destDir = getOrCreate(ksDir, dirname, additionalPath), while it should be < MyColumnFamily>.
So I guess that the cfname computation should be adapted to include the "-old.json" manifest files.
Ignace
From: aaron morton [mailto:aaron@thelastpickle.com]
Sent: vrijdag 8 februari 2013 03:09
To: user@cassandra.apache.org
Subject: Re: Directory structure after upgrading 1.0.8 to 1.2.1
the -old.json is an artefact of Levelled Compaction.
You should see a non -old file in the current CF folder.
I'm not sure what would have created the -old CF dir. Does the timestamp indicate it was created the time the server first started as a 1.2 node?
Cheers
-----------------
Aaron Morton
Freelance Cassandra Developer
New Zealand
@aaronmorton
http://www.thelastpickle.com
On 7/02/2013, at 10:39 PM, "Desimpel, Ignace" <Ig...@nuance.com>> wrote:
After upgrading from 1.0.8 I see that now the directory structure has changed and has a structure like <keyspace><columnfamily> (part of the 1.1.x migration).
But I also see that directories appear like <keyspace><columnfamily-old>, and the content of that 'old' directory is only one file <columnfamily-old.json>.
Questions :
Should this xxx-old.json file be in the other directory?
Should the extra directory <xxx-old> not be created?
Or was that intentionally done and is it allowed to remove these directories ( manually ... )?
Thanks
Re: Directory structure after upgrading 1.0.8 to 1.2.1
Posted by aaron morton <aa...@thelastpickle.com>.
the -old.json is an artefact of Levelled Compaction.
You should see a non -old file in the current CF folder.
I'm not sure what would have created the -old CF dir. Does the timestamp indicate it was created the time the server first started as a 1.2 node?
Cheers
-----------------
Aaron Morton
Freelance Cassandra Developer
New Zealand
@aaronmorton
http://www.thelastpickle.com
On 7/02/2013, at 10:39 PM, "Desimpel, Ignace" <Ig...@nuance.com> wrote:
> After upgrading from 1.0.8 I see that now the directory structure has changed and has a structure like <keyspace><columnfamily> (part of the 1.1.x migration).
> But I also see that directories appear like <keyspace><columnfamily-old>, and the content of that ‘old’ directory is only one file <columnfamily-old.json>.
>
> Questions :
> Should this xxx-old.json file be in the other directory?
> Should the extra directory <xxx-old> not be created?
> Or was that intentionally done and is it allowed to remove these directories ( manually … )?
>
> Thanks