Wikipedia:Reference desk/Archives/Computing/2021 September 23

From Wikipedia, the free encyclopedia
Computing desk
< September 22 << Aug | September | Oct >> September 24 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is a transcluded archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


September 23[edit]

new.7ucs.biz[edit]

While I was surfing the Internet on my Samsung Galaxy J7 phone, I got a message that said that it was new.7ucs.biz, and that my phone was infected by viruses, and that I needed to click OK to scan for and remove the viruses. This is almost certainly malware masquerading as anti-malware. There have been other similar exploits in the past. I restarted the phone. I then got the same message, and it then started displaying a progress bar and said that it was scanning. Of course I have no idea what it was actually doing. I restarted the phone again. A Google search on new.7ucs.biz doesn't find anything, so either this is new malware, or malware that generates a string randomly. The domain 7ucs.biz does exist, and the whois on it says only that it has a registrar and name servers, and that everything else is hidden.

Does anyone know anything about this? Also, is there a forum or archive to report this to? 25 years ago, the Usenet group NANAS was the archive to report malware to. 15 years ago, NANAS was the archive to report malware to. Robert McClenon (talk) 02:31, 23 September 2021 (UTC)[reply]

@Robert McClenon: If a notification like that randomly pops up, then your phone is already infected. I would suggest trying a factory reset of your phone if you don't have much to lose. You are most likely correct on it being malware pretending to be an antivirus. ― Blaze The WolfTalkBlaze Wolf#6545 18:06, 29 September 2021 (UTC)[reply]
User:Blaze The Wolf - It doesn't pop up randomly. It pops up when I am viewing news on a news site that has ads. A few months ago, I had a similar problem with an entirely different message, but I encountered it in the same way, by viewing news that had ads. It only pops up then, so I am more inclined to think that the ad is infected. It doesn't pop up on my phone when I am doing anything else, and hasn't popped up in the last six days. I didn't provide that detail in my previous report, and in retrospect, maybe I should have, because it may be a key detail. Robert McClenon (talk) 04:57, 30 September 2021 (UTC)[reply]
@Robert McClenon: Ah ok. If it's an ad then that makes more sense. You made it seem like it just randomly came up. There's a chance the ad was infected or that was the ad itself. ― Blaze The WolfTalkBlaze Wolf#6545 12:58, 30 September 2021 (UTC)[reply]

Old computer part[edit]

Name plate
my part
similar chasis

I'm trying to get some (any) information on an old computer part I have. The name plate says "Remington Rand - Eckert-Mauchly Division", so I'm thinking it was from the period after Remington Rand bought Eckert–Mauchly Computer Corporation and before it was named the Univac Division. Or maybe they just didn't update the name plate.

The part I have (second photo) resembles the chassis in the third part, which is from a Univac I. My part is 23.5 inches long.

Univac 1 and Univac 2 were pretty much the same, except for the memory technology.

The Eckert-Mauchly name makes me think it is early, but the name plate has a "58" in the serial number, and there is also a paper sticker with "759-58 P 1 M 0602" so it may be from 1958 - the year the Univac 2 was introduced.

Can anyone give some information on this? Bubba73 You talkin' to me? 20:20, 23 September 2021 (UTC)[reply]

Constraint for non-recursive links in Microsoft SQL Server database[edit]

The system I am developing at a work as a Microsoft SQL Server database.

This database has a table, let's call it Person, which has the following fields: ID integer not null, name varchar not null and parent integer. If the field parent has a non-null value, it's supposed to be the same as the ID value in a different Person row. However, in this case, that row may not itself have a non-null parent value.

Is there a way to enforce this with a database constraint? JIP | Talk 23:24, 23 September 2021 (UTC)[reply]

Not everyone has a parent, so making parent non-null causes a problem. It can be null. What I've done in the past is create a "null" person. Because ID is usually an integer incrementing from 1 and up, I create a record "0,No Person,0". That record has ID of zero and a parent of 0. So, it meets all criteria. Now, when someone doesn't have a parent, set parent to 0 and it will be the "null person" record. 97.82.165.112 (talk) 12:05, 24 September 2021 (UTC)[reply]
I don't see how this meets the requirement that a non-zero person having a non-zero parent may not itself be the parent of another non-zero person. This requirement is rather crucial in the database model. JIP | Talk 13:59, 24 September 2021 (UTC)[reply]
Just in case there is ambiguity, "may not" is used in the strict sense here. Recursive parent relationships, i.e. a person both having a parent and being a parent at the same time, are explicitly forbidden. JIP | Talk 14:16, 24 September 2021 (UTC)[reply]
It appeared that your issue was with the "null" ability of the database. However, this does help. The constraint is that the root (top level) parent is null (or the zero person). So, you must first have a function that backtracks to find the root parent of a any random entry. The function gets the person and places it in a list, then gets the parent and adds it to the list, then the parent's parent, etc... Each time, it checks the list to see if the person is already in the list. If so, fail. If not, keep going until you hit null/0. The function is best implemented with recursion in SQL, passing the child and the current list of people into the function. The function fetches the child's parent and then compares to the list. If it needs to, it calls itself with the new child and the new list. I haven't used MSQL in a while, but I am very certain that the function for the constraint has to return 1 to say "Good" and 0 to say "Bad." So, if your recursive function finds the null/0 person, it returns 1. That means that the update/insert is good. If it returns 0, it is bad. The problem comes with a delete. If you cannot have a null parent, a trigger on delete is required to update that person's ID to 0 for all records that have the to-be-delete person as the parent. It won't affect the constraint because deleting doesn't cause circular relationships. 97.82.165.112 (talk) 17:06, 24 September 2021 (UTC)[reply]
The requirement is stronger than "parent relationships can't be cyclic". Repeated parent relationships aren't allowed at all. So there should be no such thing as a "parent's parent". A person who has a parent can't itself be a parent. What I am after is a simple ADD CONSTRAINT clause that can enforce this on updates and inserts. JIP | Talk 17:19, 24 September 2021 (UTC)[reply]
That doesn't exist. You have to write a function. That function would be easier to write. Given a person, check the parent. Return 1 if the parent meets the constraint or 0 otherwise. Constraints in MSQL are not fancy because you are expected to write a function for anything beyond simple constraints. 97.82.165.112 (talk) 20:00, 24 September 2021 (UTC)[reply]