You can subscribe to this list here.
2007 |
Jan
|
Feb
(2) |
Mar
|
Apr
(58) |
May
(153) |
Jun
(19) |
Jul
(8) |
Aug
(4) |
Sep
(10) |
Oct
(3) |
Nov
(12) |
Dec
(101) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(69) |
Feb
(18) |
Mar
(22) |
Apr
(1) |
May
(4) |
Jun
(13) |
Jul
|
Aug
(8) |
Sep
(2) |
Oct
(19) |
Nov
(7) |
Dec
(30) |
2009 |
Jan
(105) |
Feb
(75) |
Mar
(55) |
Apr
(35) |
May
(28) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(5) |
From: Lena G. <len...@ya...> - 2012-12-28 14:53:01
|
I thought this was free, and you wanted help, the article in the paper didn't say that one needed to buy an app.? sincerely, len...@ya... ------------------------------------------------------------------------------ Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. ON SALE this month only -- learn more at: http://p.sf.net/sfu/learnmore_122712 _______________________________________________ Andro-general mailing list And...@li... https://lists.sourceforge.net/lists/listinfo/andro-general ------------------------------------------------------------------------------ Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122812 _______________________________________________ Andro-general mailing list And...@li... https://lists.sourceforge.net/lists/listinfo/andro-general |
From: Lena G. <len...@ya...> - 2012-12-28 00:38:07
|
________________________________ From: Lena Gal <len...@ya...> To: "And...@li..." <And...@li...> Sent: Thursday, December 27, 2012 3:48 PM Subject: Re: [Andro-general] crowdsourcing I thought this was free, and you wanted help, the article in the paper didn't say that one needed to buy an app.? sincerely, len...@ya... ------------------------------------------------------------------------------ Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. ON SALE this month only -- learn more at: http://p.sf.net/sfu/learnmore_122712 _______________________________________________ Andro-general mailing list And...@li... https://lists.sourceforge.net/lists/listinfo/andro-general |
From: Lena G. <len...@ya...> - 2012-12-27 22:48:31
|
I thought this was free, and you wanted help, the article in the paper didn't say that one needed to buy an app.? sincerely, len...@ya... |
From: Lena G. <len...@ya...> - 2012-12-27 22:44:21
|
I thought this was free? sincerely, len...@ya... ________________________________ From: Lena Gal <len...@ya...> To: "And...@li..." <And...@li...> Sent: Thursday, December 27, 2012 3:38 PM Subject: Re: [Andro-general] crowdsourcing Hi I read about Andromeda galaxy and would like to participate in the spotlight star clusters program. How do I do this? Sincerely, len...@ya... ------------------------------------------------------------------------------ Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. ON SALE this month only -- learn more at: http://p.sf.net/sfu/learnmore_122712 _______________________________________________ Andro-general mailing list And...@li... https://lists.sourceforge.net/lists/listinfo/andro-general |
From: Lena G. <len...@ya...> - 2012-12-27 22:38:47
|
Hi I read about Andromeda galaxy and would like to participate in the spotlight star clusters program. How do I do this? Sincerely, len...@ya... |
From: Kenneth D. <ke...@se...> - 2009-05-22 17:13:41
|
aha, I see we have the windows download on Google. Once we get the other two I *think* we're ready for the release 1 announcement. -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: Kenneth D. <ke...@se...> - 2009-05-22 17:07:10
|
I've made a new feature for column calculation chains. This was needed by Jeff for our mutual customer. With this feature you can now put a Postgres function into a chain return argument. The rules are: 1) Start the return value with an "!" 2) Prefix column names with "!", not with "@" This only works on the return value, not the compare value. Example: module test: description: Ken Test Stuff column xday: type_id: numb colprec: 2 column xmonth: type_id: numb colprec: 2 table chaintests: module: test description: Chain Tests column recnum: primary_key: Y column date_1: suffix: _1 description: A Date uisearch: Y column xday: uisearch: Y description: The Day of Month chain calc: test 01: return: !extract(day from !date_1) column xmonth: description: The Month chain calc: test 01: return: !extract(month from !date_1) column year: description: The Year chain calc: test 00: return: !extract(year from !date_1) column cnt: description: Calculation chain calc: test 00: compare: @xmonth > 5 return: @xday * @xmonth test 01: return: @xmonth * @year -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: Kenneth D. <ke...@se...> - 2009-05-18 16:00:11
|
Justin and Donald, I've changed my SVN settings successfully to point to Google instead of Sourceforge, looks good. I notice we still need the following: 1) Downloads on Google. We really only need the Debian Package and the Windows install, and the latest tar.gz for maual install. 2) We need to modify the default install so that the node manager now points at Google instead of sourceforge. When that is done, I will draft an announcement for Release 1. -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: Kenneth D. <ke...@se...> - 2009-05-13 17:34:04
|
Kenneth Downs wrote: > > I could have sworn I did this, so I kept looking for the commands I > thought I had forgotten, but it looks like you have to update your own > table in the AFTER trigger with the new values. Somebody please tell me > I'm wrong here. > > I was wrong. In the INSTEAD OF triggers you execute an INSERT or UPDATE that provides the new values. -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: Donald J. O. I. <do...@do...> - 2009-05-12 17:39:51
|
postgresql supports the boolean type. ----- Original Message ----- From: "Wesley L. Roepken" <we...@cm...> To: "Andromeda" <and...@li...> Sent: Tuesday, May 12, 2009 1:35:32 PM GMT -05:00 US/Canada Eastern Subject: Re: [Andro-general] Postgres question Hi Don I'm not necessarily going to be running it on Postgresql but Drupal supports it and I don't want to screw that up for people who do run it. My question it basically do I use tinyint, or should I say int and give it a size, or does Postgresql have a boolean type/how does Wes Donald J. Organ IV wrote: > Can I ask why you are looking to run Drupal on Postgresql? > > > ----- Original Message ----- > From: "Wesley L. Roepken" <we...@cm...> > To: "Andromeda" <and...@li...> > Sent: Tuesday, May 12, 2009 1:11:50 PM GMT -05:00 US/Canada Eastern > Subject: [Andro-general] Postgres question > > Hi all > I'm not that familiar with postgres and need a little help so that my > project can support it properly. I need to make sure that my create > table statement will work, after that Drupal's db abstraction layer will > handle all other calls correctly. How would you rework this to conform > to postgres? or is it fine the way it is? > > CREATE TABLE spamicide ( > form_id varchar(128) NOT NULL, > form_field varchar(64) NOT NULL default 'feed_me', > enabled tinyint NOT NULL default 0, > removable tinyint NOT NULL default 1, > PRIMARY KEY (form_id) > ); > > TIA > Wes > ------------------------------------------------------------------------------ The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your production scanning environment may not be a perfect world - but thanks to Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700 Series Scanner you'll get full speed at 300 dpi even with all image processing features enabled. http://p.sf.net/sfu/kodak-com _______________________________________________ Andro-general mailing list And...@li... https://lists.sourceforge.net/lists/listinfo/andro-general |
From: Wesley L. R. <we...@cm...> - 2009-05-12 17:35:37
|
Hi Don I'm not necessarily going to be running it on Postgresql but Drupal supports it and I don't want to screw that up for people who do run it. My question it basically do I use tinyint, or should I say int and give it a size, or does Postgresql have a boolean type/how does Wes Donald J. Organ IV wrote: > Can I ask why you are looking to run Drupal on Postgresql? > > > ----- Original Message ----- > From: "Wesley L. Roepken" <we...@cm...> > To: "Andromeda" <and...@li...> > Sent: Tuesday, May 12, 2009 1:11:50 PM GMT -05:00 US/Canada Eastern > Subject: [Andro-general] Postgres question > > Hi all > I'm not that familiar with postgres and need a little help so that my > project can support it properly. I need to make sure that my create > table statement will work, after that Drupal's db abstraction layer will > handle all other calls correctly. How would you rework this to conform > to postgres? or is it fine the way it is? > > CREATE TABLE spamicide ( > form_id varchar(128) NOT NULL, > form_field varchar(64) NOT NULL default 'feed_me', > enabled tinyint NOT NULL default 0, > removable tinyint NOT NULL default 1, > PRIMARY KEY (form_id) > ); > > TIA > Wes > |
From: Donald J. O. I. <do...@do...> - 2009-05-12 17:21:37
|
Can I ask why you are looking to run Drupal on Postgresql? ----- Original Message ----- From: "Wesley L. Roepken" <we...@cm...> To: "Andromeda" <and...@li...> Sent: Tuesday, May 12, 2009 1:11:50 PM GMT -05:00 US/Canada Eastern Subject: [Andro-general] Postgres question Hi all I'm not that familiar with postgres and need a little help so that my project can support it properly. I need to make sure that my create table statement will work, after that Drupal's db abstraction layer will handle all other calls correctly. How would you rework this to conform to postgres? or is it fine the way it is? CREATE TABLE spamicide ( form_id varchar(128) NOT NULL, form_field varchar(64) NOT NULL default 'feed_me', enabled tinyint NOT NULL default 0, removable tinyint NOT NULL default 1, PRIMARY KEY (form_id) ); TIA Wes ------------------------------------------------------------------------------ The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your production scanning environment may not be a perfect world - but thanks to Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700 Series Scanner you'll get full speed at 300 dpi even with all image processing features enabled. http://p.sf.net/sfu/kodak-com _______________________________________________ Andro-general mailing list And...@li... https://lists.sourceforge.net/lists/listinfo/andro-general |
From: Wesley L. R. <we...@cm...> - 2009-05-12 17:12:05
|
Hi all I'm not that familiar with postgres and need a little help so that my project can support it properly. I need to make sure that my create table statement will work, after that Drupal's db abstraction layer will handle all other calls correctly. How would you rework this to conform to postgres? or is it fine the way it is? CREATE TABLE spamicide ( form_id varchar(128) NOT NULL, form_field varchar(64) NOT NULL default 'feed_me', enabled tinyint NOT NULL default 0, removable tinyint NOT NULL default 1, PRIMARY KEY (form_id) ); TIA Wes |
From: Kenneth D. <ke...@se...> - 2009-05-11 12:29:01
|
Justin Dearing wrote: > On Sat, May 9, 2009 at 12:48 PM, Kenneth Downs <ke...@se...> wrote: > > >> I am so far manually coding examples to see what the generator would have to >> do, but the pseudo-code looks something like this: >> >> CREATE TRIGGER blah >> INSTEAD OF INSERT >> on TABLE >> blah blah blah >> >> -- the trick is to do the insert that did >> -- not happen because of INSTEAD OF >> -- here is how a fetch and chain would work >> >> INSERT INTO table (customer,custtype,discount,amount,amt_discount) >> SELECT inserted.customer >> ,customers.custtype >> ,custtypes.discount >> ,inserted.amount >> ,inserted.amount * custtypes.discount >> FROM inserted >> JOIN customers ON inserted.customer = customers.customer >> JOIN custtypes ON customers.custtype = custtypes.custtype >> >> >> > > It seems trigger recursion is off by default on sql server (or at > least on the sql server instanci I am playing with.) I thought this > was not the case normally. Since trigger recursion is a server level > thing, its something you might want to look into. I'm going to do some > more research my self. > > I initially thought you code worked due to the max recursion level > being reached. I now see it works because recursion isn't on. I should > have just tried to write the trigger the way you did even though my > brain said "infinitative recursion loop". > I think you might be misunderstanding trigger recursion. With an INSTEAD OF trigger, the original command issued by the app is never executed, the trigger fires instead. If the trigger does not do the INSERT, (or update or whatever), then it does not happen. If the trigger *does* do the command, this does not cause recursion. To repeat: An INSERT command inside an INSTEAD OF INSERT trigger does not cause trigger recursion to occur. Recursion occurs when a "FOR" trigger writes to the same table that the trigger is on. Then, if trigger recursion is on at the database level, the same trigger will fire again -- up to a limit of 32 total depth of trigger call stack. There are likely more subtleties, but that is the broad picture. > Regards, > > Justin Dearing > > ------------------------------------------------------------------------------ > The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your > production scanning environment may not be a perfect world - but thanks to > Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700 > Series Scanner you'll get full speed at 300 dpi even with all image > processing features enabled. http://p.sf.net/sfu/kodak-com > _______________________________________________ > Andro-general mailing list > And...@li... > https://lists.sourceforge.net/lists/listinfo/andro-general > -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: Justin D. <zip...@gm...> - 2009-05-09 19:48:05
|
On Sat, May 9, 2009 at 12:48 PM, Kenneth Downs <ke...@se...> wrote: > I am so far manually coding examples to see what the generator would have to > do, but the pseudo-code looks something like this: > > CREATE TRIGGER blah > INSTEAD OF INSERT > on TABLE > blah blah blah > > -- the trick is to do the insert that did > -- not happen because of INSTEAD OF > -- here is how a fetch and chain would work > > INSERT INTO table (customer,custtype,discount,amount,amt_discount) > SELECT inserted.customer > ,customers.custtype > ,custtypes.discount > ,inserted.amount > ,inserted.amount * custtypes.discount > FROM inserted > JOIN customers ON inserted.customer = customers.customer > JOIN custtypes ON customers.custtype = custtypes.custtype > > It seems trigger recursion is off by default on sql server (or at least on the sql server instanci I am playing with.) I thought this was not the case normally. Since trigger recursion is a server level thing, its something you might want to look into. I'm going to do some more research my self. I initially thought you code worked due to the max recursion level being reached. I now see it works because recursion isn't on. I should have just tried to write the trigger the way you did even though my brain said "infinitative recursion loop". Regards, Justin Dearing |
From: Kenneth D. <ke...@se...> - 2009-05-09 16:48:12
|
Justin Dearing wrote: > Ken, > > How exactly are you doing these replacements with INSTEAD OF triggers? > Are you using views? Unless I am missing the IF TRIGGER_NESTLEVEL() > > 1 THEN DONT_INSTEAD_OF() syntax, I think its impossible to do without > views. > > > I am so far manually coding examples to see what the generator would have to do, but the pseudo-code looks something like this: CREATE TRIGGER blah INSTEAD OF INSERT on TABLE blah blah blah -- the trick is to do the insert that did -- not happen because of INSTEAD OF -- here is how a fetch and chain would work INSERT INTO table (customer,custtype,discount,amount,amt_discount) SELECT inserted.customer ,customers.custtype ,custtypes.discount ,inserted.amount ,inserted.amount * custtypes.discount FROM inserted JOIN customers ON inserted.customer = customers.customer JOIN custtypes ON customers.custtype = custtypes.custtype It's a little messy for my taste. I already have code that will generate those JOINs, but it is a monster. I'm thinking about other tricks, that make much nastier code but are much easier to generate, such as: INSERT INTO table (customer,custtype,discount,amount,amt_discount) SELECT inserted.customer ,(SELECT customers.custtype FROM customers WHERE custtype=inserted.custtype) ,(Select custtype.discount from custtypes where custtype = (....insert subquery from line above)) ,inserted.amount ,inserted.amount * (...insert discount subquery from two lines up) FROM inserted As I said, this makes for extremely nasty looking INSERT/UPDATE statements, but is far far easier to generate, because you keep re-using the subquery snippets. It also heavily depends upon SQL Server optimizing the statement, but my experience with SQL Server actually has me optimistic on that point. We may even be able to get away with this: SELECT inserted.customer ,(subquery to get custtype) as custtype ,(Select custtype.discount from custtypes where custtype = custtype) as discount ,inserted.amount ,inserted.amount * discount FROM inserted ...where i have used "as" to name the results and refer to them later. SQL Server is much more generous in letting you do this than Postgres, but I have to brush up on it. > On Sat, May 2, 2009 at 9:46 AM, Kenneth Downs <ke...@se...> wrote: > >> Well I had to get my head out of postgres mode. SQL Server does allow >> replacements pretty elegantly, but the approach is vastly different. >> It's actually easy. >> >> The idea is you create an INSTEAD OF trigger. In the case of an INSERT >> trigger, you actually have to code an INSERT that puts in the mix of >> what the user typed and what you are going to replace. If you don't do >> that, nothing happens. >> >> Conceptually this is easy to handle for all three operations, INSERT, >> UPDATE, DELETE. The next question becomes how much work is involved? >> Can Andromeda's trigger generation system be generalized to allow for >> this other way of thinking, or will it work better if everything is >> hardcoded for each platform? >> >> Here is the worst case: >> >> 1) Column A is a FETCHed value >> 2) Column A is also a foreign key to some other table, and must be checked >> 3) Column B is a FETCHED value, based on Column A >> 4) Column C is calculated from A and B >> >> That's the hairiest situation Andromeda handles, and it does it rather >> well. There is a complex column dependency system that works out the >> order of calculations and FK checks to make sure those go well. >> >> So, can it be generalized to all platforms? >> >> Well, in a row-by-row situation, yes. Each platform has a slightly >> different syntax, but basically the trigger can generate all derived >> values and store them in variables (that's what it does now). Then, if >> its SQL Server, it must actually issue an INSERT or UPDATE to commit the >> values. >> >> But I still have to experiment and work out if MS SQL triggers are >> row-by-row or statement. I seem to recall they are statement level by >> default, and so we get into a bit of a jam. Have to conduct an >> experiment there. >> >> More later... >> >> -- >> Kenneth Downs >> Secure Data Software >> ke...@se... www.andromeda-project.org www.secdat.com >> Office: 631-689-7200 >> Cell: 631-379-0010 >> Fax: 631-689-0527 >> >> >> ------------------------------------------------------------------------------ >> Register Now & Save for Velocity, the Web Performance & Operations >> Conference from O'Reilly Media. Velocity features a full day of >> expert-led, hands-on workshops and two days of sessions from industry >> leaders in dedicated Performance & Operations tracks. Use code vel09scf >> and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf >> _______________________________________________ >> Andro-general mailing list >> And...@li... >> https://lists.sourceforge.net/lists/listinfo/andro-general >> > > ------------------------------------------------------------------------------ > The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your > production scanning environment may not be a perfect world - but thanks to > Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700 > Series Scanner you'll get full speed at 300 dpi even with all image > processing features enabled. http://p.sf.net/sfu/kodak-com > _______________________________________________ > Andro-general mailing list > And...@li... > https://lists.sourceforge.net/lists/listinfo/andro-general > -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: Justin D. <zip...@gm...> - 2009-05-09 15:32:54
|
Ken, How exactly are you doing these replacements with INSTEAD OF triggers? Are you using views? Unless I am missing the IF TRIGGER_NESTLEVEL() > 1 THEN DONT_INSTEAD_OF() syntax, I think its impossible to do without views. In my particular case, a view won't work. I'm using a trigger to populate a new column from an attribute in an xml column because we don't have time to change and test all the nasty stored procs used by our ETL process. To illustrate a example: Id | XmlColumn | NewColumn 1 | <Element Attrib1="blarg"/> | blarg While you can do wonderful things with xml columns in SQL server 200(5|8), the indexes are broken in such a way that joins are really slow. Hence the quasi denormalization (for lack of a better term due to the unholy matrimony of SQL and XML) you see above. Now the trigger is just a work around, at some point we will update and test all the stored procedures to populate that piece of data in the column and not the attribute. Since this is a temporary trigger to avoid changing code, introducing a view into the mix is not an option. However, if I can make an INSTEAD OF trigger work, I'd like to compare its performance to the AFTER trigger I now use. On Sat, May 2, 2009 at 9:46 AM, Kenneth Downs <ke...@se...> wrote: > > Well I had to get my head out of postgres mode. SQL Server does allow > replacements pretty elegantly, but the approach is vastly different. > It's actually easy. > > The idea is you create an INSTEAD OF trigger. In the case of an INSERT > trigger, you actually have to code an INSERT that puts in the mix of > what the user typed and what you are going to replace. If you don't do > that, nothing happens. > > Conceptually this is easy to handle for all three operations, INSERT, > UPDATE, DELETE. The next question becomes how much work is involved? > Can Andromeda's trigger generation system be generalized to allow for > this other way of thinking, or will it work better if everything is > hardcoded for each platform? > > Here is the worst case: > > 1) Column A is a FETCHed value > 2) Column A is also a foreign key to some other table, and must be checked > 3) Column B is a FETCHED value, based on Column A > 4) Column C is calculated from A and B > > That's the hairiest situation Andromeda handles, and it does it rather > well. There is a complex column dependency system that works out the > order of calculations and FK checks to make sure those go well. > > So, can it be generalized to all platforms? > > Well, in a row-by-row situation, yes. Each platform has a slightly > different syntax, but basically the trigger can generate all derived > values and store them in variables (that's what it does now). Then, if > its SQL Server, it must actually issue an INSERT or UPDATE to commit the > values. > > But I still have to experiment and work out if MS SQL triggers are > row-by-row or statement. I seem to recall they are statement level by > default, and so we get into a bit of a jam. Have to conduct an > experiment there. > > More later... > > -- > Kenneth Downs > Secure Data Software > ke...@se... www.andromeda-project.org www.secdat.com > Office: 631-689-7200 > Cell: 631-379-0010 > Fax: 631-689-0527 > > > ------------------------------------------------------------------------------ > Register Now & Save for Velocity, the Web Performance & Operations > Conference from O'Reilly Media. Velocity features a full day of > expert-led, hands-on workshops and two days of sessions from industry > leaders in dedicated Performance & Operations tracks. Use code vel09scf > and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf > _______________________________________________ > Andro-general mailing list > And...@li... > https://lists.sourceforge.net/lists/listinfo/andro-general |
From: Kenneth D. <ke...@se...> - 2009-05-04 03:25:54
|
Actually I'd like to do it. If you try to start a project on Google called 'andro', I will get an email requesting permission and I will send an OK. Then you can do whatever you can. Justin Dearing wrote: > Ken, > > The very fact that google code has an API for things like this is > another reason to migrate to google code. > > After I setup the pgfoundry account for andromeda, I will start looking > at google code. I'll look to see if there is a practical way to deal > with the fact that we have 52 open tracker items in the sourceforge > project but we want people to enter all new bugs in the google code > project. > > I realize you might want to hold off on a migration due to the upcoming > 1.0 release, or decide against it. However, I want to investigate it at > this time. > > Regards, > > Justin Dearing > > Sent to you by Justin Dearing via Google Reader: Gurtle via Stefan's > blog by Stefan on 5/3/09 > > Gurtle is an IBugTraqProvider plugin for TortoiseSVN, dealing with the > issue tracker of Google Project Hosting (also sometimes referred to as > Google Code). > > > > Gurtle just released a new version 0.4, and this time it comes with a > nice installer so you don't have to build it yourself anymore. > > In case you don't know whether you need this tool, ask yourself two > questions: > > - Are you using TortoiseSVN? > - Are you hosting one or more projects on Google Project Hosting? > If you answered both questions with yes, then you need Gurtle! And > according to some unofficial statistics, quite a few of you will. > > Once you've installed Gurtle, the TortoiseSVN commit dialog will show > you a button at the top right from where you can start Gurtle. A new > dialog shows you then all open issues of your project from where you > can select the issue your commit is referring to. This makes it much > easier to write commit messages. > > For help on how to configure your projects with Gurtle, please refer to > the wiki page which explains this. > > > read more > > Things you can do from here: > - Subscribe to Stefan's blog using Google Reader > - Get started using Google Reader to easily keep up with all your > favorite sites > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > Register Now & Save for Velocity, the Web Performance & Operations > Conference from O'Reilly Media. Velocity features a full day of > expert-led, hands-on workshops and two days of sessions from industry > leaders in dedicated Performance & Operations tracks. Use code vel09scf > and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf > ------------------------------------------------------------------------ > > _______________________________________________ > Andro-general mailing list > And...@li... > https://lists.sourceforge.net/lists/listinfo/andro-general > -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: Justin D. <zip...@gm...> - 2009-05-04 03:03:49
|
Ken, The very fact that google code has an API for things like this is another reason to migrate to google code. After I setup the pgfoundry account for andromeda, I will start looking at google code. I'll look to see if there is a practical way to deal with the fact that we have 52 open tracker items in the sourceforge project but we want people to enter all new bugs in the google code project. I realize you might want to hold off on a migration due to the upcoming 1.0 release, or decide against it. However, I want to investigate it at this time. Regards, Justin Dearing Sent to you by Justin Dearing via Google Reader: Gurtle via Stefan's blog by Stefan on 5/3/09 Gurtle is an IBugTraqProvider plugin for TortoiseSVN, dealing with the issue tracker of Google Project Hosting (also sometimes referred to as Google Code). Gurtle just released a new version 0.4, and this time it comes with a nice installer so you don't have to build it yourself anymore. In case you don't know whether you need this tool, ask yourself two questions: - Are you using TortoiseSVN? - Are you hosting one or more projects on Google Project Hosting? If you answered both questions with yes, then you need Gurtle! And according to some unofficial statistics, quite a few of you will. Once you've installed Gurtle, the TortoiseSVN commit dialog will show you a button at the top right from where you can start Gurtle. A new dialog shows you then all open issues of your project from where you can select the issue your commit is referring to. This makes it much easier to write commit messages. For help on how to configure your projects with Gurtle, please refer to the wiki page which explains this. read more Things you can do from here: - Subscribe to Stefan's blog using Google Reader - Get started using Google Reader to easily keep up with all your favorite sites |
From: Kenneth D. <ke...@se...> - 2009-05-02 14:21:49
|
While I'm in question-everything mode, one thing I've always wanted for Andromeda is virtual columns. The idea is this. I've got a table with some very complex calculations. Every intermediate step of every calc is embedded in the table as a value. On the plus side, this lets people use the Andromeda philosophy of "debugging the data", which is cool. On the down-side, the performance of write operations is directly linear to the row size, so Andromeda apps are always slower to insert or update. The more you get the Andromeda philosophy, the slower your app is. Very bad. Now, in transactional biz apps, this doesn't tend to matter in the end. The difference between a 50ms insert and a 100ms insert is nothing to the user. But still, wouldn't it be better to let the programmer decide which columns he wants to see, and which to hide for the sake of performance? So we get the idea of a "virtual" column. These are meant to be used in calculations where you do not want to see the intermediate steps. The column's value is generated and used in triggers to perform calculations, but it is not part of the table, the value disappears when the trigger is finished. It is a temp variable. Just thinking out loud... -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: Kenneth D. <ke...@se...> - 2009-05-02 13:54:56
|
Well I had to get my head out of postgres mode. SQL Server does allow replacements pretty elegantly, but the approach is vastly different. It's actually easy. The idea is you create an INSTEAD OF trigger. In the case of an INSERT trigger, you actually have to code an INSERT that puts in the mix of what the user typed and what you are going to replace. If you don't do that, nothing happens. Conceptually this is easy to handle for all three operations, INSERT, UPDATE, DELETE. The next question becomes how much work is involved? Can Andromeda's trigger generation system be generalized to allow for this other way of thinking, or will it work better if everything is hardcoded for each platform? Here is the worst case: 1) Column A is a FETCHed value 2) Column A is also a foreign key to some other table, and must be checked 3) Column B is a FETCHED value, based on Column A 4) Column C is calculated from A and B That's the hairiest situation Andromeda handles, and it does it rather well. There is a complex column dependency system that works out the order of calculations and FK checks to make sure those go well. So, can it be generalized to all platforms? Well, in a row-by-row situation, yes. Each platform has a slightly different syntax, but basically the trigger can generate all derived values and store them in variables (that's what it does now). Then, if its SQL Server, it must actually issue an INSERT or UPDATE to commit the values. But I still have to experiment and work out if MS SQL triggers are row-by-row or statement. I seem to recall they are statement level by default, and so we get into a bit of a jam. Have to conduct an experiment there. More later... -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: ericdes <er...@vc...> - 2009-05-02 03:52:36
|
I'm reading your mailing list regularly although I won't have a chance to use Andromeda in the next couple of months. It sounds like you 'really' want to support other databases than PostgreSQL. I'm not sure it's a good move (my opinion here). I'm currently doing some Java work and it's amazing to see how many backends are configured 'by default' in PostgreSQL although any other databases are permitted as long as they provide a jdbc driver. The case is PostgreSQL is a very good database and the open source one that many would recommend on a production server. Well, you all know that databases in Java are interchangeable because they use the least common sets of features, the logics / constraints being done at a higher level. Which is exactly the opposite of the philosophy of Andromeda. Andromeda makes use of many PostgreSQL features that many haven't even heard of. Supporting another database in Andromeda means to me that you are rewriting another Andromeda sotware. If there is an overall description of Andromeda that I remember, it's more or less this one: "Andromeda features a data-dictionary to generate PostgreSQL databases that promotes the best practices by Kenneth Downs and eases life cyle management of data, the 'real' value in a software application.". Or at least it is what I'm expecting of Andromeda. In my opinion there is still a lot of work to achieve these interesting goals but this beginning is promising... And I'm happy that you chose PostgreSQL, the second popular choice after MySQL in the open source world, and highly recommended when there are a lot of "writes" involved (as it is the case for business applications that Andromeda targets anyway) as opposed to only "reads" (MySQL's field of usage). I bet you are looking after popularity and MySQL as being a tool of choice to achieve a wider acceptance for Andromeda. Although I spotted some good designs done in MySQL, many developments I have seen in MySQL are just not good database designs, even horrors more often than not. And this doesn't come as a surprise: MySQL is installed everywhere and along with PhpMyAdmin is only a few key strokes away from users who improvise themselves as database programmers. Will they care about designing better databases and get an interest about Andromeda's goals? Whereas: don't you think an interested programmer wouldn't mind switching to PostgreSQL if you explain the pluses of using it? I haven't signed up for a shared plan in a long time, but as far as I remember the ISP gives you an MySQL database and a username / password. Do they also give you the rights to create users (a must for Andromeda)? It seems to me anyway that Andromeda users are those who went further to dedicated systems, with root control, and where the installation of PostgreSQL is a matter of simple instructions. Also, I tend to think that many Andromeda applications will run on a LAN (i.e. on a local computer), I'm not sure what will be the share of those wanting to host them remotely where it's obviously costlier and slower. Well, all this was to give you my opinion that I'm not so sure about the work involved towards popularity by targeting new databases is worth it or even misleading. Sincerely, Eric. On 5/2/2009 2:31 AM, Kenneth Downs wrote: > I've been experimenting with lots of possible feature additions, > including cross-server compatibility. I've hit many roadblocks, some of > them very surprising. Here is some of what I've found, feedback welcome. > > POSTGRES > ================= > > No problems obviously because we already do everything with this. When > working with the others I became amazed at how powerful postgres really is. > > > MYSQL: > ============ > > Problem with multiple 'sequence' columns - show stopper, cannot be done. > > All Andromeda tables have a column called 'skey', which uses "SEQUENCE" > in postgres-ish, aka "IDENTITY" in mssql and "AUTO_INCREMENT" in mysql. > > Sometimes a programmer may add their own SEQUENCE column, most commonly > an order no or something like that. Many mysql programmers do this > exclusively as the pk for all of their tables. > > However, mySQL will not allow multiple columns like this, and it won't > let you fake them either. I tried. > > So supporting mySQL would bring us to the startling conclusion that we'd > throw away skey. This is not so bad as it sounds, but it would mean any > mySQL release would be incompatible with current code in a very basic way. > > > ORACLE > ========= > > Got fed up trying to use the Express edition on Linux. > > > DB/2 > ============ > > Got fed up trying to use the Express edition on Linux. > > > > MS SQL SERVER > =============== > > I may make myself sound very dumb here, because I used SQL Server for > years before working on Andromeda, but it looks like you cannot modify > incoming values on BEFORE triggers (which they call INSTEAD OF) triggers. > > I could have sworn I did this, so I kept looking for the commands I > thought I had forgotten, but it looks like you have to update your own > table in the AFTER trigger with the new values. Somebody please tell me > I'm wrong here. > |
From: Kenneth D. <ke...@se...> - 2009-05-02 00:26:35
|
Justin Dearing wrote: > On Fri, May 1, 2009 at 5:01 PM, Kenneth Downs <ke...@se...> wrote: > > >> MS SQL SERVER >> =============== >> >> I may make myself sound very dumb here, because I used SQL Server for >> years before working on Andromeda, but it looks like you cannot modify >> incoming values on BEFORE triggers (which they call INSTEAD OF) triggers. >> >> I could have sworn I did this, so I kept looking for the commands I >> thought I had forgotten, but it looks like you have to update your own >> table in the AFTER trigger with the new values. Somebody please tell me >> I'm wrong here. >> >> > > I've never done an instead of trigger, but I'll look into this. However, > going from postgres to ms sql I ended up taking the same strategy as you. > Off the top of my head, are you running into trigger nesting issues? If so > you can use TRIGGER_NESTLEVEL to prevent infinitative recursion. > I read about it and realized we would need to make a database setting to allow it. I've got a spot for "init" code that sticks various platform-specific stuff in, and that would be the place. > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > Register Now & Save for Velocity, the Web Performance & Operations > Conference from O'Reilly Media. Velocity features a full day of > expert-led, hands-on workshops and two days of sessions from industry > leaders in dedicated Performance & Operations tracks. Use code vel09scf > and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf > ------------------------------------------------------------------------ > > _______________________________________________ > Andro-general mailing list > And...@li... > https://lists.sourceforge.net/lists/listinfo/andro-general > -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: Kenneth D. <ke...@se...> - 2009-05-02 00:20:10
|
Well, there is one way to simulate the replacement of values if the trigger will not allow it. You can create a view for each table, disable table access and require access through the view. The view then assembles the changes and writes to the base table. Kind of a pain, to say the least, at many levels, and I'm still hoping I just haven't found the right Google term for getting MS SQL Server to allow replacement values in a trigger. Or, this could be done only on SQL Server. I don't think I realized how powerful postgres was until I tried doing things on other platforms. -- Kenneth Downs Secure Data Software ke...@se... www.andromeda-project.org www.secdat.com Office: 631-689-7200 Cell: 631-379-0010 Fax: 631-689-0527 |
From: John Z. <joh...@ya...> - 2009-05-01 22:29:34
|
Maybe my PHP is a bit rusty and maybe my php.net documentation searching skills are a bit rusty, but I can't seem to find the following function anywhere in Andromeda, nor on php.net - gp(...); |