Well, I'd actually be using schema as a MIB name.  For example,
IF_MIB.ifTable or SNMPv2_MIB.systemGroup.  Dashes are converted to
underscores, since MIBs don't use underscores and SQL doesn't like dashes.

As far as testing, that's why I'd like to add this in as a flag.  Testing
is still required, but if the default is what it's always has been, it's
not going to be a drastic change for those modules.  I'm not sure about
Nano; should this change be in Nano?

On Wed, Nov 23, 2011 at 3:34 AM, Jens Rehsack <rehs...@googlemail.com>wrote:

> 2011/11/22 Brendan Byrd <sineswi...@gmail.com>:
> > (Adding dbi-dev to conversation for
> > https://rt.cpan.org/Ticket/Display.html?id=72588)
> >
> > Still debugging DBD::SNMP right now, and I'm currently fighting with
> > SQL::Statement to allow for schema.table formats. The idea would that it
> > would be possible to reference the MIB name within the table, like
> > IF_MIB.ifTable for IF-MIB::ifTable. However, I'm finding all kinds of
> code
> > that strips the schema from the table name.
>
> As far as I know, snmp tables doesn't have a scheme - they might (or might
> not)
> have a unique dot separated identifier path.
>
> Let's take dskTable as example. It's full qualified oid is ".
> 1.3.6.1.4.1.2021.9"
> or "enterprises.ucd.9" yada-yada-yada.
>
> How do you expect the schema.table support can help you and how it is
> required to be changed from current implementation (see DBD::File how
> currently it's used).
>
> Another example is smProcessStatus - or "enterprises.smart-snmpd.10.7"
> which has it's table at smProcessTable.1 or "1.3.6.1.4.1.36539.10.7.7.1".
> Or smDiskIoStatus (enterprises.smart-snmpd.20.1), which contains two
> tables: smDiskIoTable and smDiskIoIntervalTable.
>
> For details about this mib, you've currently have to download the
> tarballs from http://www.netbsd.org/~sno/smart-snmpd/.
>
> Nevertheless, I do not understand what kind of different schema
> handling would really help you on this.
>
> > So far, I've found code in parse, TABLE_NAME, IDENTIFIER, and
> open_tables.
> > So it seems that SQL::Statement -really- wants to remove the schema. What
> > kind of pitfalls would I encounter if I allowed for a schema.table
> format?
> > I have removed the code to test with, and it appears to work just fine
> (so
> > far).  For IDENTIFIER, I added this:
> >
> > return $self->IDENTIFIER($1) && $self->IDENTIFIER($2) if ( $id =~
> > m/^(.+)\.([^\.]+)$/ ); # check both schema/table
> >
> > I'd like to turn this into a patch, since I have a need to have these
> > available.  Given that this is a change to the general functionality of
> > SQL::Statement, I'm open to adding this in as a flag of some sort.
>
> Did you try all tests of SQL::Statement, DBD::File, DBD::DBM and DBD::CSV
> to prove against unexpected side effects? How do you add the compatible
> change to DBI::SQL::Nano?
>
>
>
> > --
> > Brendan Byrd/SineSwiper <sineswi...@gmail.com>
> > Computer tech, Perl wizard, and all-around Internet guru
> >
>



-- 
Brendan Byrd/SineSwiper <sineswi...@gmail.com>
Computer tech, Perl wizard, and all-around Internet guru

Reply via email to