Re: First test of the Database Designer

Поиск
Список
Период
Сортировка
От Luis Ochoa
Тема Re: First test of the Database Designer
Дата
Msg-id BANLkTimnyzrQHTVSTp7=bFGDu0DSNWzXNg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: First test of the Database Designer  (Guillaume Lelarge <guillaume@lelarge.info>)
Ответы Re: First test of the Database Designer  (Guillaume Lelarge <guillaume@lelarge.info>)
Список pgadmin-hackers
Can you tell me how much progress you did since you started working on
this list? I tried to compile your branch tonight, but got some errors
about missing files. Should be the same issue as always (obsolete
module.mk files).


I just made a git pull from my repository at latest commit: 985002d4eff2d42d1d6b then made a git diff looking for local difference and any diff weren't located. then I emit a bash bootstrap, later a configure, and at last a make at my ubuntu 11.04 machine.

Then everything goes fine and no errors where raised. 

I'm not sure about what's your problem but I can tell you that after all previous errors, I had tried to avoid obsoletes module.mk files at my commits.

Now information about all TODOs from mentor
 
* I have an assertion each time I launch pgAdmin2 from your repo:
 Debug: ./src/common/cmdline.cpp(446): assert "i != (-1)" failed in
 Found(): unknown switch

Well, I'm not sure how to solve this error because this probably is a merging problem of gleu repo with my pgadmin3 fork and  original pgadmin3 at github of a part of pgAdmin that I don't know how works, and I have never modified, because that have raised like 100+ hundreds conflicts and I tried to solve as good as my knowledge of pgAdmin let me to do it.
 
* I should be able to right click on an empty schema to create a table

Done.

* UI of new table dialog:
 * the "Generate Short Name" button should not be there
 * focus should be on the first textbox
 * OK should be the default button (iow, hitting enter should trigger
  it)
 * Cancel should behave like any cancel button (iow, hitting esc should
   trigger it)

show dialog -> focus at first textbox, enter at that textbox will be the same as click over ok button.
pressing esc-> will be the same as click over cancel button.

new UI is:

table name [text] short name [text] [generate button]
[ok button] [cancel button]

 
* UI of relationships
 * it should be possible to create relationships between existing
   columns

Right now working on it...
 

* adding a char(n) type doesn't ask for its length

Fixed for all datatypes, added precision and scale to numeric too.
 
* moreover, the list of datatype seems weird to me... you should list
 all available types and when the user choose a type with a length
 and/or a precision, it should ask them (it's already like that for
 varchar, but not for char, numeric, etc)

Well, mentor suggestion was grabing all the datatypes in the pg_type catalog, but this isn't only getting all datatypes of pg_type it include changing the way datatypes are managed right now, and probably should be changed at next step of my project of adding support of user defined datatypes and because this I believe this is part of that project goal. But I'm going to do whatever my mentor suggest me. What should I do ?


* I can't use the del key when I select an object (table and
 relationship)

Added.
 

* if I create a relationship between t1 and t2, and then between t2 and
 t1, once you start moving one of these tables, the two relationships
 appear as just one

This is part of a new feature that will change base relationship classes. This wasn't planned for this project of improvement of database designer, but again if my mentor suggest it, I'll do it. 

* if the user asks for a new design, the sql textbox should be empty too

Done.
 
* UI of relationship contextual menu
 * you should only keep one item of "1:1" and "1:M", it's one or the
   other, so you must not offer both with a checkbox
Done.
 
 * rather than menu items "Foreign Key from Primary Key", and "Foreign
   Key from Unique Key", you should have a sub menu entitled "Foreign
   Key From", and, for the items in the submenu, you should have
   "Primary Key", and "Unique Constraint "+name of each unique
   constraint... this way, the user  knows quickly which constraint is
   used, and could change it quickly... and you have one less dialog

Done.
 

* in a table box, there is a "Indexes" item never used. It should
 disappeared.

Removed.
 

* I can move a table outside of the drawing area, and I can never get it
 back

Fixed.
 

Even if it's a long list of complaints, I didn't really hit a bug like I
did in the previous GSoC, so that's quite good. I could even draw my
test schema almost completely (almost because Luis's repo doesn't
support yet self referencing table).

Related to: two relationships appear as just one.

Self referencing table are part of a new feature that will change base relationship classes too, and adding it will require to add orthogonal lines and new kind of locators of images boundaries and new kind of connector. This wasn't planned for this project of improvement of database designer, but again if my mentor suggest it, I'll do it. But this feature will take like 2 or 1 week in the best case scenary.
 
That test schema always ended with
a crash of pgAdmin. That doesn't happen any more, and it's good. But
it's not good enough to be commitable.


I'm going to finish Fk Mapping Subsystem between today and tomorrow, and I will end all except this two new features:

- self relationships and two relationships appear as just one.
- datatypes from pg_type catalog.

Right now I want to know what should I do with this new features?

Regards, Luis.

В списке pgadmin-hackers по дате отправления:

Предыдущее
От: Guillaume Lelarge
Дата:
Сообщение: Re: Discussion - Search Objects
Следующее
От: Ashesh Vashi
Дата:
Сообщение: Re: Discussion - Search Objects