Closed esackbauer closed 2 years ago
Just upgrade to ownCloud 10.9 as well. I have the exact same issue.
I confirm same issue, upgraded from 10.8 to 10.9 om CentOS 7 with php 7.4.27.
I can browse to https://marketplace.owncloud.com/api/v1/platform/10.9.0/apps.json and see the JSON, similar to https://marketplace.owncloud.com/api/v1/platform/10.8.0/apps.json
Maybe the existence and protection of the marketplace end-point for 10.9.0 has been fixed now?
Browsing is not the problem, as is also stated in the initial post:
Double checked with wget and same user, this works and downloads the json files on that machine.
Opening from OC is. The error still exists here.
It works, when you create an Account on https://marketplace.owncloud.com. You should add the API-Key in market in your owncloud web.
Adding the API-key seems like a workaround, not a solution. A Marketplace account is for OC app developers, not for regular users. At least, according to the webpage.
It works, when you create an Account on https://marketplace.owncloud.com. You should add the API-Key in market in your owncloud web.
Why wasn't this mentioned in release notes of 10.9 as breaking change? I still have to consider it broken.
Sorry for this, Workaround seems to work. We will look into this in the next days after holiday period. Not a change by purpose.
The only way I see this happening is in case oC includes a wrong API key in the request to the marketplace. This key can either be defined in the config.php
file via marketplace.key
, or in the oc_appconfig
table via key
. Assuming your market app worked before the update, I see 2 different scenarios:
1) A wrong API key has somehow sneaked its way into the config during the update.
2) The key exists in the oc_appconfig
table, but is set to null
. This worked in the past (< 10.9), but due to https://github.com/owncloud/core/pull/39554, it won't work anymore.
2 seems far more likely to me. It would also explain why this error is happening only to a few users and why this comes up with 10.9.
Since the market now works again for you, I assume there is no way you can reproduce this? It would be really helpful to see if one of these config values is set while this error is happening. Maybe someone runs into the same issue and can provide this information.
The only way I see this happening is in case oC includes a wrong API key in the request to the marketplace. This key can either be defined in the
config.php
file viamarketplace.key
, or in theoc_appconfig
table viakey
. Assuming your market app worked before the update, I see 2 different scenarios:
- A wrong API key has somehow sneaked its way into the config during the update.
- The key exists in the
oc_appconfig
table, but is set to `null'. This worked in the past (< 10.9), but due to Fix so that a null appconfig value is treated as an empty string #39554, it won't work anymore.2 seems far more likely to me. It would also explain why this error is happening only to a few users and why this comes up with 10.9.
Since the market now works again for you, I assume there is no way you can reproduce this? It would be really helpful to see if one of these config values is set while this error is happening. Maybe someone runs into the same issue and can provide this information.
Hi, i am hitting the same issue. I have not configured any api key within config.php and i don't see any api key in the table oc_appconfig.
Let me know if can help further.
Regards Richard
@JammingBen:
I don't understand why this explains that the error is only happening for "a few" (?) users. I have a standard installation.
As I actually have 2 OC instances, I also checked the other (more recent) one. It hasn't been updated to 10.9 yet and doesn't heva the key value in the database (nor in the config). So I assume deleting that row from the database should fix the issue?
I can confirm that this fixed the issue for me:
delete from oc_appconfig where appid = 'market' and configkey = 'key';
I don't understand why this explains that the error is only happening for "a few" (?) users. I have a standard installation.
As I actually have 2 OC instances, I also checked the other (more recent) one. It hasn't been updated to 10.9 yet and doesn't heva the key value in the database (nor in the config).
I (and many other users) ran through the update process several times, no issues whatsoever. Therefore I assume that only instances with this null
value for the market key are affected. I don't know how the value got in there, but I don't think it's related to the update itself. I rather think it has been there for a long time, probably some action/process in the past set it.
Is updating your second oC instance currently an option?
So I assume deleting that row from the database should fix the issue?
As far as I can tell, yes.
@darootler
Hi, i am hitting the same issue. I have not configured any api key within config.php and i don't see any api key in the table oc_appconfig.
Okay, that's strange... So there is no entry for key
in the table at all? Or is the value for key
just empty/null?
@JammingBen
I don't see anything that looks lika an api key. Could you please post a sql query or the exact key name?
Regards Richard
Could you please post a sql query or the exact key name?
select * from oc_appconfig where appid = 'market' and configkey = 'key';
Okay, my bad. Seems like the value is NULL:
Regards Richard
For anyone who runs into this issue currently:
Please check if null
is set for the market API key in the app config. You can do so by accessing your database (either via CLI or phpMyAdmin) and running the following command:
select * from oc_appconfig where appid = 'market' and configkey = 'key';
If this command returns the following:
+--------+-----------+-------------+
| appid | configkey | configvalue |
+--------+-----------+-------------+
| market | key | NULL |
+--------+-----------+-------------+
1 row in set (0.000 sec)
Then simply remove this entry to solve the problem. This can be done in your database again via:
delete from oc_appconfig where appid = 'market' and configkey = 'key';
Post running this command, your market place will be fully available again.
Thank you all for your help! We will decide what to do with the change in behavior which was introduced by https://github.com/owncloud/core/pull/39554 and provide a fix soon.
Okay, so that seems to be the problem indeed. To sum it up, for anyone who runs into this issue currently: please check if
null
is set for the market API key in the app config (select * from oc_appconfig where appid = 'market' and configkey = 'key';
). If so, simply remove this value (delete from oc_appconfig where appid = 'market' and configkey = 'key';
).Thanks for your help! We will decide what to do with the change in behavior which was introduced by #39554 and provide a fix soon.
I can confirm that deleting the key via delete from oc_appconfig where appid = 'market' and configkey = 'key';
fixes the issue with the marketplace.
Thank you!
Regards Richard
With the change in behavior, I guess that the code is now seeing that oc_appconfig
setting as "" (empty string) rather than null
and there is probably some test that checks !== null
and so it thinks that there is a market key set, and uses the empty string as the key. Maybe such code should just check if the length of the string is > 0.
The issue has been fixed in the new marketplace app 0.6.2: https://github.com/owncloud/market/releases/tag/v0.6.2 -> closing here.