| 05:41:30 | Testbaudson: | hi spsneo |
| 05:41:40 | Testbaudson: | sorry i couldn't make it yesterday |
| 10:40:19 | Testbaudson: | hi spsneo |
| 10:45:06 | spsneo: | Testbaudson, hello |
| 10:45:23 | Testbaudson: | sorry I didn't show up yesterday |
| 10:45:48 | spsneo: | Testbaudson, its ok |
| 10:46:09 | spsneo: | Testbaudson, today it was convocation for graduating students here |
| 10:46:10 | Testbaudson: | if you have any questions now, we can discuss them |
| 10:46:16 | Testbaudson: | ok i see |
| 10:46:16 | spsneo: | so i was bit busy |
| 10:46:41 | spsneo: | well, I went through wiki media;s update routine |
| 10:47:08 | spsneo: | their update routine will not cater our needs |
| 10:47:31 | Testbaudson: | ok |
| 10:47:37 | spsneo: | as they have just a sequential database update process |
| 10:47:49 | spsneo: | first they take a bacakup of all the database |
| 10:48:03 | spsneo: | and then few configuration files backup |
| 10:48:32 | spsneo: | and then their update routine makes required changes in the database. |
| 10:48:54 | spsneo: | I mean, its just a sequential update process. |
| 10:49:13 | spsneo: | ya they do check some compatibility stuffs like php version on the server etc... |
| 10:49:40 | spsneo: | I discussed the project with seven yesterday |
| 10:49:48 | spsneo: | he suggested to .. |
| 10:49:56 | spsneo: | model mapbender as... |
| 10:50:16 | spsneo: | having a separate data space and separate software space |
| 10:50:18 | spsneo: | .. |
| 10:50:25 | spsneo: | your opinions now ? |
| 10:50:55 | Testbaudson: | so how does mediawiki determine the differences in the database? |
| 10:51:03 | Testbaudson: | I didn't get that |
| 10:51:38 | spsneo: | differences in database, as in? |
| 10:52:15 | Testbaudson: | you need to check the status of the existing installation... |
| 10:52:23 | spsneo: | yup... |
| 10:52:24 | Testbaudson: | and compare it to the new version |
| 10:52:31 | Testbaudson: | how do they do this? |
| 10:52:52 | spsneo: | ya for that only they have the mysql username and password |
| 10:53:15 | spsneo: | using mysql queries they check the database structure and accordingly |
| 10:53:20 | spsneo: | update it |
| 10:53:38 | spsneo: | all done through mysql queries from php |
| 10:54:14 | Testbaudson: | how do they know which version is the existing installation? |
| 10:54:40 | spsneo: | I dont think so they require to check this.. |
| 10:54:47 | spsneo: | they just do one thing |
| 10:54:58 | spsneo: | they check the php version installed on the server |
| 10:55:23 | spsneo: | if the php version installed on the server is not supported by the current mediawiki |
| 10:55:30 | spsneo: | then they abort the update process |
| 10:56:14 | Testbaudson: | ok |
| 10:56:27 | Testbaudson: | so how do they determine if the new version is different? |
| 10:57:08 | spsneo: | actually they develop on the basis of their older version |
| 10:57:18 | spsneo: | i mean |
| 10:58:02 | spsneo: | if there's a change in the db structure then it can be detected through sql queries right |
| 10:58:12 | Testbaudson: | can you give me an exaple? |
| 10:58:15 | Testbaudson: | can you give me an example? |
| 10:58:28 | Testbaudson: | what sql queries? |
| 10:59:11 | spsneo: | like ... there can be a querry which will create a table if a table "wb_xyz" doesnt exist |
| 10:59:41 | spsneo: | so if in the new version if they add a new table they can check and create the table |
| 11:00:11 | Testbaudson: | so what if an attribute of a column changes? |
| 11:00:19 | spsneo: | hope I am clear to me |
| 11:00:22 | Testbaudson: | like we have varchar( 100 ) instead of varchar( 50 ) |
| 11:00:44 | spsneo: | wait lemme take a look at this |
| 11:07:42 | spsneo: | they first check the table attributes and then use ALTER to change the table attributes |
| 11:09:06 | Testbaudson: | ok |
| 11:09:11 | Testbaudson: | how do they check the attributes? |
| 11:09:23 | : | * Testbaudson is very inquisitive today :- ) |
| 11:12:28 | spsneo: | the same way we get table attributes in phpmyadmin |
| 11:12:43 | spsneo: | phpmyadmin is also totally a php app |
| 11:12:48 | spsneo: | isn't it? |
| 11:13:35 | Testbaudson: | yes, but do you know it's done? |
| 11:13:42 | Testbaudson: | I don't :-( |
| 11:17:18 | spsneo: | yup this is simple |
| 11:17:28 | spsneo: | it can be done like |
| 11:18:06 | spsneo: | $foo = mysql_querry( "DESC TABLE table" ); |
| 11:18:23 | spsneo: | $foodata = mysql_fetch_assoc( $foo ); |
| 11:18:41 | spsneo: | and then a loop on the recordset to get the required info |
| 11:19:05 | Testbaudson: | does it return sql? |
| 11:19:14 | Testbaudson: | what is the format? |
| 11:20:30 | spsneo: | it returns an associative array |
| 11:20:36 | Testbaudson: | we have to make sure our algorithm works for both mysql and postgresql |
| 11:20:56 | spsneo: | ya i checked the media wiki's update routine |
| 11:21:28 | spsneo: | well I'll have to check php functions for postgresql |
| 11:22:58 | Testbaudson: | ok so we can use this for checking and updating the database structure |
| 11:23:00 | spsneo: | well i checked PHP manual just now |
| 11:23:15 | spsneo: | they have a similar function for postgresql as well |
| 11:23:28 | spsneo: | so database can be easily updated mediawiki's way |
| 11:23:41 | spsneo: | problems will be with files |
| 11:24:07 | spsneo: | I'll devote this whole week in coming up with this solution |
| 11:24:56 | Testbaudson: | i think files will not be a huge problem... |
| 11:25:06 | Testbaudson: | another big problem is data in the database |
| 11:25:38 | spsneo: | yup data in database will be a problem for us |
| 11:25:52 | Testbaudson: | but maybe we solve the "easy" problems first |
| 11:26:02 | spsneo: | for taht have u thought of any solution |
| 11:26:20 | spsneo: | well database structure can be solved easy way |
| 11:26:32 | Testbaudson: | we have to analyze in which situations we need to check data... |
| 11:26:40 | Testbaudson: | I also want to do some simplifications... |
| 11:26:57 | Testbaudson: | the whole "element" and "application element" thing |
| 11:27:15 | Testbaudson: | this would enable read only elements |
| 11:27:27 | Testbaudson: | which would be less error prone |
| 11:28:23 | spsneo: | yup\ |
| 11:28:30 | spsneo: | that will ease teh issue |
| 11:28:44 | Testbaudson: | ok, so how do we proceed: |
| 11:28:53 | Testbaudson: | here's a list of previous database changes |
| 11:28:55 | Testbaudson: | http://www.mapbender.org/Dbchanges |
| 11:28:57 | sigq: | Title: Dbchanges - MapbenderWiki ( at www.mapbender.org ) |
| 11:29:12 | Testbaudson: | maybe you can analyze the list and check if we can solve these kind of changes... |
| 11:29:21 | spsneo: | ok |
| 11:29:22 | Testbaudson: | with the approach just discussed... |
| 11:29:30 | spsneo: | fine |
| 11:29:33 | Testbaudson: | ( database structure update ) |
| 11:29:44 | spsneo: | I'll send u a php script and a demo db |
| 11:29:48 | spsneo: | and u can check it |
| 11:29:56 | spsneo: | will taht be fine? |
| 11:29:56 | Testbaudson: | another question |
| 11:30:17 | Testbaudson: | how does mediawiki know which database elements are new |
| 11:30:19 | Testbaudson: | ? |
| 11:30:27 | Testbaudson: | for example, if there is a new column? |
| 11:30:44 | Testbaudson: | is there just an ALTER TABLE SQL? |
| 11:30:57 | Testbaudson: | or is this information stored somewhere else? |
| 11:31:34 | spsneo: | no teh information is stored in the update php script |
| 11:32:49 | spsneo: | look |
| 11:33:08 | spsneo: | the media wiki update routine is not that automated.. |
| 11:33:12 | spsneo: | its like |
| 11:33:26 | spsneo: | update routine for a specific version |
| 11:33:32 | Testbaudson: | so it's hard wired in a script? |
| 11:33:41 | spsneo: | yup |
| 11:33:43 | spsneo: | but here |
| 11:33:46 | Testbaudson: | hmm...I thought they were more sophisticated :-P |
| 11:33:51 | spsneo: | the case is different |
| 11:34:03 | spsneo: | here we have to dynamically write a script |
| 11:34:12 | spsneo: | no they are simple |
| 11:34:45 | spsneo: | as in here we haev to store the db changes somewhere and then accordingly generate the script |
| 11:34:49 | spsneo: | right? |
| 11:35:47 | spsneo: | u thr? |
| 11:35:50 | Testbaudson: | yes |
| 11:35:51 | spsneo: | Testbaudson, thr? |
| 11:35:59 | spsneo: | Testbaudson, r u getting me? |
| 11:36:08 | Testbaudson: | it should be as dynamic as possible |
| 11:36:14 | spsneo: | or am I not able to make myself clear? |
| 11:36:18 | spsneo: | yup i know |
| 11:36:25 | Testbaudson: | I understood what you mean |
| 11:36:58 | spsneo: | don't worry I am getting the update routine for our mapbender |
| 11:37:01 | Testbaudson: | maybe we can have some kind of XML with the changes? is that clever? |
| 11:37:18 | spsneo: | ya thats very much possible |
| 11:37:34 | spsneo: | from xml we can generate teh db change |
| 11:37:39 | spsneo: | script |
| 11:37:48 | Testbaudson: | the best thing would be a web service... |
| 11:37:53 | spsneo: | or there are few more solutions |
| 11:38:02 | Testbaudson: | you pass your version number... |
| 11:38:15 | Testbaudson: | and the service returns the XML with the changes from that version to the current |
| 11:38:22 | Testbaudson: | ( just an idea ) |
| 11:39:00 | spsneo: | cant it be that we detect the version no. automatically |
| 11:39:02 | spsneo: | ? |
| 11:39:51 | Testbaudson: | yes, but we would have to send it to the web service |
| 11:40:17 | Testbaudson: | but anyway, that's just an idea |
| 11:40:20 | Testbaudson: | let's keep it simple |
| 11:40:25 | Testbaudson: | and local |
| 11:41:01 | spsneo: | yup |
| 11:41:18 | spsneo: | so what will be my this week's task |
| 11:41:23 | spsneo: | lets speed up now |
| 11:41:28 | spsneo: | as we need to code more speedily |
| 11:41:40 | spsneo: | and we are also coming close to 26th |
| 11:41:48 | spsneo: | the official date of gsoc |
| 11:42:03 | spsneo: | so..assign me more week now onwards |
| 11:42:04 | Testbaudson: | spsneo: no hurry with the coding |
| 11:42:11 | Testbaudson: | we should do proper planning |
| 11:42:18 | spsneo: | ok |
| 11:42:21 | Testbaudson: | if we have a good plan, coding will be fast |
| 11:42:24 | spsneo: | Testbaudson, as u say |
| 11:42:31 | spsneo: | you are correct |
| 11:49:10 | spsneo: | sorry got disconnected |
| 11:49:16 | spsneo: | let me check the logs |
| 11:50:02 | spsneo: | Testbaudson: so what for this week? |
| 11:50:07 | Testbaudson: | hi |
| 11:50:19 | Testbaudson: | this week: analyze existing db changes.... |
| 11:50:28 | Testbaudson: | with respect to the difference between structure and data updates |
| 11:50:35 | Testbaudson: | see what can be done with our approach. |
| 11:50:42 | Testbaudson: | check how this can be done with a wrapper |
| 11:50:49 | Testbaudson: | for both postgresql and mysql |
| 11:50:56 | Testbaudson: | ( we use wrapper functions in Mapbender, like db_prep_query ) |
| 11:51:26 | spsneo: | ok |
| 11:51:28 | Testbaudson: | focus on database structure first |
| 11:51:29 | spsneo: | fine |
| 11:51:42 | Testbaudson: | after this, we will go to the file system.... |
| 11:51:47 | spsneo: | so this whole week on database structure |
| 11:51:48 | Testbaudson: | and then database data |
| 11:51:52 | Testbaudson: | yes |
| 11:51:53 | spsneo: | ok |
| 11:52:10 | spsneo: | anything else u wish to say or suggest? |
| 11:52:11 | Testbaudson: | we have to make sure we don't miss a case |
| 11:52:16 | spsneo: | yup |
| 11:52:25 | Testbaudson: | yes, please document your research properly |
| 11:52:27 | spsneo: | we have to be as close to perfect as possible |
| 11:52:31 | spsneo: | yup |
| 11:52:49 | Testbaudson: | this will make it easy for interested parties to comment |
| 11:52:55 | Testbaudson: | and to help |
| 11:52:57 | spsneo: | as till now I havent done research on mapbender, so no much documentation |
| 11:53:07 | spsneo: | and now on I'll take care of it |
| 11:53:12 | Testbaudson: | cool |
| 11:53:21 | spsneo: | and also I will maintain my wiki page about my updates |
| 11:53:28 | Testbaudson: | wonderful |
| 11:53:44 | Testbaudson: | I think this project will be a huge success... |
| 11:53:50 | Testbaudson: | Mapbender users will love you |
| 11:54:06 | spsneo: | I will try my best |
| 11:54:07 | Testbaudson: | thanks |
| 11:54:10 | spsneo: | it will be my privilege |
| 11:54:14 | spsneo: | thanks |
| 11:54:18 | spsneo: | so should I leave now |
| 11:54:23 | spsneo: | as its late here in india |
| 11:54:30 | Testbaudson: | yeees, that's tru |
| 11:54:32 | Testbaudson: | yeees, that's true |
| 11:54:36 | Testbaudson: | have a good night |
| 11:54:39 | Testbaudson: | bye |
| 11:54:40 | spsneo: | thanks |
| 11:54:45 | spsneo: | same to you |
| 11:54:46 | spsneo: | bye |
| 11:54:49 | Testbaudson: | thanks and bye |
| 11:54:52 | spsneo: | and well ya one more questions |
| 11:54:57 | Testbaudson: | ok |
| 11:55:03 | spsneo: | what all's happening in mentor list of gsoc |
| 11:55:05 | spsneo: | ? |
| 11:55:09 | spsneo: | just for knowledge |
| 11:55:21 | Testbaudson: | ummm....I didn't check :- ) |
| 11:55:31 | spsneo: | hehe |
| 11:55:33 | spsneo: | ohk |
| 11:55:44 | spsneo: | and who is the gsoc administrator for OSGeo |
| 11:55:45 | spsneo: | ? |
| 11:56:06 | Testbaudson: | it's Wolf, you find him in the #osgeo channel |
| 11:56:09 | Testbaudson: | __wolf__ |
| 11:56:13 | Testbaudson: | is his username |
| 11:56:24 | spsneo: | ya i have talked to him a few times |
| 11:56:32 | spsneo: | well ok |
| 11:56:37 | Testbaudson: | so you know him, good |
| 11:56:38 | spsneo: | now I'll leave |
| 11:56:41 | Testbaudson: | ok, bye |
| 11:56:46 | spsneo: | bye |
| 11:56:51 | spsneo: | and have a nice weekend |
| 12:34:05 | Testbaudson: | hi seven |
| 12:34:17 | seven: | Ho Testbaudson |
| 12:34:19 | Testbaudson: | have you heard of wikinear? |
| 12:34:36 | seven: | Nope. Sounds interesting. |
| 12:34:43 | Testbaudson: | http://simonwillison.net/2008/Mar/22/wikinear/ |
| 12:34:44 | sigq: | Title: wikinear.com, OAuth and Fire Eagle ( at simonwillison.net ) |
| 12:34:50 | Testbaudson: | Sehr cool |
| 12:35:01 | Testbaudson: | um...very cool |
| 12:35:53 | seven: | Cool. |
| 12:36:02 | : | * Testbaudson has sent a mail to all at wheregroup |
| 12:36:16 | seven: | Excellent. |
| 12:37:26 | seven: | Do you know about the OSGeo Membership Mashup idea? |
| 12:37:58 | seven: | http://wiki.osgeo.org/wiki/Category_talk:OSGeo_Member |
| 12:37:59 | sigq: | Title: Category talk:OSGeo Member - OSGEO ( at wiki.osgeo.org ) |
| 12:38:11 | Testbaudson: | yes, Christian is working on it |
| 12:38:24 | seven: | OK, so you do know. |
| 12:38:26 | seven: | :- ) |
| 12:38:53 | : | * Testbaudson has taken a look at several IP locators today |
| 12:39:10 | Testbaudson: | in the OSGeo wiki there are coordinates for each user |
| 12:39:31 | Testbaudson: | but mash ups like wikipediavision use the IP address I gues ( ? ) |
| 12:39:39 | seven: | There are several options. |
| 12:39:53 | seven: | One would be to make everybody geo-tag their user pages |
| 12:40:09 | seven: | the other is to extract th ecurrent editor's IP and try to geolocate that one. |
| 12:40:15 | seven: | We could do both. |
| 12:40:33 | Testbaudson: | yes...most geolocators are NOT free |
| 12:40:41 | Testbaudson: | and the free ones are error prone |
| 12:40:45 | seven: | So that one has a permamnet home location and is tracked for example while traveling |
| 12:40:59 | Testbaudson: | this one is the best I found: http://www.hostip.info/ |
| 12:40:59 | seven: | Hm. Then we must build our own... :- ) |
| 12:41:01 | sigq: | Title: My IP Address Lookup and GeoTargeting - Community Geotarget IP Project - domain to IP lookup, what country, city IP addresses map to - IP Trace ( at www.hostip.info ) |
| 12:41:11 | seven: | Yes, I stumbled across that one too. |
| 12:41:14 | Testbaudson: | ok |
| 12:41:42 | Testbaudson: | a cool mash up would be a traceroute application |
| 12:41:54 | Testbaudson: | you would have a permanent map, and as you surg the net... |
| 12:42:13 | Testbaudson: | it shows where your packages come from |
| 12:42:25 | Testbaudson: | you would have a permanent map, and as you surf the net... |
| 12:42:28 | seven: | Yes, that would give interesting vectors and networks. |
| 12:43:05 | Testbaudson: | Another idea I had was a spam locator |
| 12:43:17 | Testbaudson: | you have the senders IP in the header |
| 12:43:30 | Testbaudson: | and you could process your spam folder and display it on a map |
| 12:44:06 | : | * Testbaudson has a lot of ideas but none is being realized :-P |
| 12:44:39 | seven: | Oh, that never happens to me... :- ) |
| 12:44:43 | Testbaudson: | lol |
| 12:47:11 | Testbaudson: | good night... |
| 12:52:16 | seven: | Good night. |