I am just upgrading a site from D5 to D6. In D5 I made a very limited use of CCK, so I chose to delete all the related content types (and their content) before upgrading to D6, and then make a clean install of CCK once I had done so.
I installed CCK 2.9 in the usual way, and then went to import a content type from an existing site. I got this error (amongst others):

in_array() [<a href='function.in-array'>function.in-array</a>]: Wrong datatype for second argument in /mysite/sites/all/modules/cck/modules/content_copy/content_copy.module on line 407.

I then thought I would try add a field to an existing content type, however the "Manage fields" option did not show up at all. Nothing seemed to be there to make CCK work.
Then I thought I would delete the newly imported type and start again, I got this message (again, amongst others):

ksort() expects parameter 1 to be array, null given in /mysite/sites/all/modules/cck/includes/content.admin.inc on line 71.

Never having had problems like this before, I then thought I would try removing CCK altogether and starting over. So I disabled all the modules and then went to uninstall CCK, at which point I got these messages (amongst others):

Unknown table &#039;content_node_field&#039; query: DROP TABLE content_node_field in /mysite/includes/database.mysql-common.inc on line 270.
Unknown table &#039;content_node_field_instance&#039; query: DROP TABLE content_node_field_instance in /mysite/includes/database.mysql-common.inc on line 270.

Pretty weird. I've never had problems like this with CCK before but it looks like a whole series of tables and what have you were simply not created at all during the install.
So I thought I would go back to the version I have running on other sites: 6.x-2.8. This seemed to work fine and I can now add fields etc. The content type import has also worked without any errors.