Does it equal to execute "CREATE ACCESS METHOD"?

Started by jacktby@gmail.comover 3 years ago5 messagesgeneral
Jump to latest
#1jacktby@gmail.com
jacktby@gmail.com

Sorry, I open another mail list to ask this question.

When I add
"{ oid => '6015', oid_symbol => 'SPB_AM_OID',
descr => 'SPB index access method',
amname => 'spb', amhandler => 'spbhandler', amtype => 'i' },"
in pg_am.dat
and add
"{ oid => '388', descr => 'spb index access method handler',
proname => 'spbhandler', provolatile => 'v',
prorettype => 'index_am_handler', proargtypes => 'internal',
prosrc => 'spbhandler' }," in pg_proc.dat,

so when I use the make install && cd contrib;make install;
whether it equals to execute create access method?

by the way, I've added the spb codes in src/access/spb, so don't worry about the spbhandler.

And Sorry for the another mail "access method xxx does not exist", you suggest me add new
Am Index in contrib, But I need to modify gist to spb, so that's not my require. And I need to know
add those in pg_proc.dat and pg_am.dat, if it won't create access method for spb, what else I need to
do?

--------------

jacktby@gmail.com

#2jacktby@gmail.com
jacktby@gmail.com
In reply to: jacktby@gmail.com (#1)
Re: Does it equal to execute "CREATE ACCESS METHOD"?

Sorry, I open another mail list to ask this question.

When I add
"{ oid => '6015', oid_symbol => 'SPB_AM_OID',
descr => 'SPB index access method',
amname => 'spb', amhandler => 'spbhandler', amtype => 'i' },"
in pg_am.dat
and add
"{ oid => '388', descr => 'spb index access method handler',
proname => 'spbhandler', provolatile => 'v',
prorettype => 'index_am_handler', proargtypes => 'internal',
prosrc => 'spbhandler' }," in pg_proc.dat,

so when I use the make install && cd contrib;make install;
whether it equals to execute create access method?

by the way, I've added the spb codes in src/access/spb, so don't worry about the spbhandler.

And Sorry for the another mail "access method xxx does not exist", you suggest me add new
Am Index in contrib, But I need to modify gist to spb, so that's not my require. And I need to know
add those in pg_proc.dat and pg_am.dat, if it won't create access method for spb, what else I need to
do?

--------------

jacktby@gmail.com

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: jacktby@gmail.com (#1)
Re: Does it equal to execute "CREATE ACCESS METHOD"?

"jacktby@gmail.com" <jacktby@gmail.com> writes:

When I add
"{ oid => '6015', oid_symbol => 'SPB_AM_OID',
descr => 'SPB index access method',
amname => 'spb', amhandler => 'spbhandler', amtype => 'i' },"
in pg_am.dat
and add
"{ oid => '388', descr => 'spb index access method handler',
proname => 'spbhandler', provolatile => 'v',
prorettype => 'index_am_handler', proargtypes => 'internal',
prosrc => 'spbhandler' }," in pg_proc.dat,
so when I use the make install && cd contrib;make install;
whether it equals to execute create access method?

Did you run initdb afterwards? What you describe here should
result in an updated postgres.bki file, but that isn't the
same as catalog entries in a live database.

And Sorry for the another mail "access method xxx does not exist", you suggest me add new
Am Index in contrib, But I need to modify gist to spb, so that's not my require. And I need to know
add those in pg_proc.dat and pg_am.dat, if it won't create access method for spb, what else I need to
do?

To be very blunt, it doesn't sound to me that your skills with
Postgres are anywhere near up to the task of writing a new
index access method. You should start with some less-ambitious
project to gain some familiarity with the code base.

regards, tom lane

#4jacktby@gmail.com
jacktby@gmail.com
In reply to: jacktby@gmail.com (#1)
Re: Re: Does it equal to execute "CREATE ACCESS METHOD"?

"jacktby@gmail.com" <jacktby@gmail.com> writes:

When I add
"{ oid => '6015', oid_symbol => 'SPB_AM_OID',
descr => 'SPB index access method',
amname => 'spb', amhandler => 'spbhandler', amtype => 'i' },"
in pg_am.dat
and add
"{ oid => '388', descr => 'spb index access method handler',
proname => 'spbhandler', provolatile => 'v',
prorettype => 'index_am_handler', proargtypes => 'internal',
prosrc => 'spbhandler' }," in pg_proc.dat,
so when I use the make install && cd contrib;make install;
whether it equals to execute create access method?

Did you run initdb afterwards? What you describe here should
result in an updated postgres.bki file, but that isn't the
same as catalog entries in a live database.

And Sorry for the another mail "access method xxx does not exist", you suggest me add new
Am Index in contrib, But I need to modify gist to spb, so that's not my require. And I need to know
add those in pg_proc.dat and pg_am.dat, if it won't create access method for spb, what else I need to
do?

To be very blunt, it doesn't sound to me that your skills with
Postgres are anywhere near up to the task of writing a new
index access method. You should start with some less-ambitious
project to gain some familiarity with the code base.

regards, tom lane

#5jacktby@gmail.com
jacktby@gmail.com
In reply to: jacktby@gmail.com (#1)
Re: Re: Does it equal to execute "CREATE ACCESS METHOD"?

thanks for your advice, I realize my problems, can you give me some materials like some study routine for pg-internal?

--------------

jacktby@gmail.com

Show quoted text

"jacktby@gmail.com" <jacktby@gmail.com> writes:

When I add

"{ oid => '6015', oid_symbol => 'SPB_AM_OID',

   descr => 'SPB index access method',

   amname => 'spb', amhandler => 'spbhandler', amtype => 'i' },"

in pg_am.dat

and  add

"{ oid => '388', descr => 'spb index access method handler',

   proname => 'spbhandler', provolatile => 'v',

   prorettype => 'index_am_handler', proargtypes => 'internal',

   prosrc => 'spbhandler' }," in pg_proc.dat,

so when I use the make install && cd contrib;make install;

whether it equals to execute create access method?

Did you run initdb afterwards?  What you describe here should

result in an updated postgres.bki file, but that isn't the

same as catalog entries in a live database.

And Sorry for the another mail "access method xxx does not exist", you suggest me add new

Am Index in contrib, But I need to modify gist to spb, so that's not my require. And I need to know

add those in pg_proc.dat and pg_am.dat, if it won't create access method for spb, what else I need to

do?

To be very blunt, it doesn't sound to me that your skills with

Postgres are anywhere near up to the task of writing a new

index access method.  You should start with some less-ambitious

project to gain some familiarity with the code base.

regards, tom lane