Login to participate
  
Register   Lost ID/password?

Louis Kessler’s Behold Blog

My Closest Unknown DNA Matches - Sun, 9 Jan 2022

Judy Russell just released a very interesting post: The 2022 DNA goals on her blog The Legal Genealogist. In it, Judy resolves to try to identify her “top who-is-this-person-match” at each testing company.

Judy was the person who prompted, well um, pushed me into getting into DNA testing. It was during the 10th Unlock the Past genealogy cruise with a bunch of other Hobbitoners as we traversed around New Zealand and Australia. Once we returned, I got my 93 year old uncle, the last in his generation, to willingly take a FamilyTreeDNA test. Soon after, I tested myself there as well. My uncle passed away only 6 months later and every time I look at his or my DNA results, I think of him.

What Judy described in her blog post sounded like a great idea. After my DNA test, I tested everywhere else that I could and I uploaded my uncle’s tests to the sites accepting uploads. I identified a couple dozen known, and a few previously unknown relatives among my matches at the various sites. But I hadn’t up to now looked closely at my top unknown matches to see if maybe I can identify how they might be related.

I’m not going to go as far as Judy and “resolve” that I identify them in 2022 like she does. Unlike hers, my genealogy:

  1. only has records (Romania and Ukraine) that allow me and my relatives to go about 5 generations back, and
  2. is plagued with endogamy, meaning some population-based DNA has been passed down implying our common ancestors may be way more than 5 generation back and different matching segments from the same person may be from different common ancestors, possibly even through both my parents.

None-the-less, I think this is a wonderful exercise for anyone to do, and who knows, maybe I’ll be surprised.


My Uncle at FamilyTreeDNA

At FamilyTreeDNA, my uncle has 35,914 matches. I am his closest match. I don’t know who R.E., his 2nd closest match is:

image

My uncle was my father’s brother. Their full ancestry as far back as I can trace was from Romania. My uncle’s mt haplogroup is H3w, so he and R.E. won’t be related along both of their matrilineal lines. But Family Tree DNA does say via that little red icon, that it thinks R.E. is on my uncle’s mother’s side.

I don’t recognize any of R.E.’s ancestral surnames. She does not have a family tree at FTDNA. I don’t recognize anyone in my uncle and R.E.’s common matches or any of the ancestral places she has in her profile.

R.E. should match me as well, and she does at 69 cM, which is about half of what my uncle matches, and that makes sense because he is 1 generation further back than me.

There is one nice thing I can do at Family Tree DNA is from my account, look at my segment matches with my uncle (blue) and compare them to my segment matches with R.E. (red). All matches are 6 cM or more:

image

And then from my uncle’s account, I can compare my uncle’s segment matches with me (blue and exactly the same as above) and compare them to my uncle’s segment matches with R.E. (red).

image

I have circled in red the segment triangulations, that is, where I and my uncle match and I match R.E. and my uncle matches R.E.  You can see that we triangulate on 6 segments, which indicate that those may have been passed down from one or more common ancestors.

So R.E. is likely related on my father’s side, but because her known ancestors are not from Romania, our common ancestor(s) is/are likely too far back to determine.


Me at FamilyTreeDNA

At Family Tree DNA, I have 33,154 matches. My uncle is my closest match, and I know my 2nd closest match, a 1C1R on my mother’s side. I don’t know my 3rd closest match P.H.:

image

This person provides no surnames or places and no family tree. Our in-common matches show my uncle first, and my 1C1R second. My uncle is on my father’s side and my 1C1R is on my mother’s side, so this may be a case where endogamy is taking over and I am related on both sides.

The blue icon indicates that Family Tree DNA thinks P.H. is on my father’s side.

If I go to my uncle’s account and I search for P.H., I see he is my uncles’ 12th closest match, only matching 94 cM with longest block 32 cM. So he matches my uncle less than I do despite my uncle being 1 generation closer to our common ancestor(s) on my father’s side. A significant amount of my matches with P.H. must be on my mother’s side.

Doing a chromosome browser comparison as above, I see that P.H., my uncle and I triangulate on 3 segments: 10 cM on Chr 4, 13 cM on Chr 6, and 11 cM on Chr 17. We do not triangulate on my large 37 cM match with P.H. or my uncle’s large 32 cM match with P.H.

Since my 1C1R on my mother’s side is a shared match of me and P.H., I could ask my 1C1R to check in her Family Tree DNA account for what she matches P.H., and then I could determine what segments the three of us triangulate on. But she is 1 generation further than me from our common ancestor so it is quite possible we don’t triangulate at all.

I’m still intrigued by that significant longest block of 37 cM between me and P.H. DNA Painting would ultimately be the best way for me to determine that segment’s origin, but I’m not going to do that now for this post.


Me at MyHeritage DNA

The next place I tested was at MyHeritage DNA. I have 19,665 matches there. I uploaded my uncle’s raw data there, and my uncle is my closest match. My 1C1R tested there as well and again is my 2nd closest match.

I don’t know who my 3rd closet match, Y.F. is.

image

His family tree of 2 people is of no help.

Don’t believe that 1st cousin twice removed to 2nd cousin once removed estimated. There is no way he can be in that range for me.

I have a 2nd cousin on my mother’s side who married someone with the same last name, but no one with his first name in my tree. That whole branch as far as I know moved from Russia to Israel and is still there, but maybe a descendant who I don’t know moved from Israel to Canada.

So then I look at my shared matches with Y.F., and we share my uncle, but not my 1C1R, indicating that Y.F. is on my father’s side, not my mother’s side. Y.F. matches 1.6% (111.6 cM) with my uncle, which is less than I match Y.F.  So maybe there is room for some matching on my mother’s side as well.

MyHeritage’s chromosome browser is very nice because it shows segment triangulations itself. You don’t have to check the 3rd leg like I did above at FamilyTreeDNA, because MyHeritage does this for you and circles the triangulations itself.

If I compare myself, Y.F. and my uncle at MyHeritage, we have two triangulating segments: 14 cM on Chr 16 and 8 cM on Chr 20:

image

If I then compare myself, Y.F. and my 1C1R at MyHeritage, we don’t have any triangulating segments.

Lots of conflicting possibilities here. That 54 cM largest segment is on segment 3 and doesn’t match my uncle. It is worth exploring one day with DNA painting,


My Uncle at MyHeritage DNA

My Uncle’s has 23,053 matches at MyHeritage DNA. His closest match is me. I don’t know how I’m connected to his second closest match, J.G.:

image

Again no family tree or other info provided. The shared matches include my uncle but don’t include my 1C1R on my mother’s side.

J.G. matches me 71.9 cM with largest segment 39 cM. J.G., my uncle and I triangulate on 2 segments: 39 cM on Chr 3, and 8 cM on Chr 11.


Me at Ancestry

Ancestry doesn’t accept uploads, so my uncle is not there. But I do know 21 other relatives there on both my father and mother’s sides who have tested.

I currently have 156,462 matches at Ancestry. The closest match that I don’t know how I’m related to is my number 11.

image

This person’s public tree of 32 people includes 8 of N.S.’ ancestors. I don’t recognize any of the surnames. His paternal grandmother comes from Romania. His maternal side is from Russia.

His shared matches indicate he is on my Father’s father’s side, so that would be Romania. But that’s about all I can gather for him.


Me at 23andMe

Like Ancestry, 23andMe doesn’t take uploads. So no uncle, but 15 relatives on both my parents sides there, so lots of help.

My closest match I don’t know is my 5th closest:

image

He/she lists 1 grandparent as coming from Russia and two from Romania, but does not give surnames.

Shared matches include people on both my father and mothers’ sides.

I have tried contacting W.M. in the past, but have not got a response, whose profile says “last active over 6 months ago”.


GEDmatch

I’m not sure why Judy didn’t include GEDmatch in her list of closest matches, but I will. I uploaded both my and my uncle’s matches to GEDmatch.

I know how I’m connected to 5 people at GEDmatch. The closest I don’t know is match number 5 who is Z.K. who matches me 103.6 cM with largest 27.2 cM.

At GEDmatch, you can check on other people by just entering their kit numbers.

My uncle matches Z.K. 130.2 cM with largest 18.4 cM

My uncle’s closest match is me, but I don’t know his next closest who is K.N. who he matches 165 cM, largest 23.9 cM.  I only match K.N. 42.4 cM with largest segment 9.9 cM.

There are nice tools at GEDmatch to help with triangulation and do other comparisons, but the actual names of these two matches don’t give me hope that I’ll be able to connect them to me.


LivingDNA

Very quietly in the background, Living DNA has been adding DNA testers.

I uploaded my uncle’s data, but he is the only one I know there out of what has now grown to 2,864 matches.

My 2nd closest match is vkun:

image 

The shared matches is still a “coming soon” feature at LivingDNA, so I can’t check them.

Unfortunately, my uncle’s account at LivingDNA got corrupted somehow, so I can no longer check his matches. I tried uploading his DNA again, but that didn’t work. I’m not too worried about this as I’ve got his data plenty of other places already.


Geneanet

I uploaded my and my uncle’s data to Geneanet. I have 1,041 DNA matches there. My uncle is number 1. I don’t know any of the others. Number 2 is L.W.:

image

Geneanet has a nice feature that compares your trees with your DNA matches tree and lets you know in that right-most column if any of your ancestors match. None of mine do with any of my DNA matches.


Geni

I have 1,976 DNA matches at Geni. I did not upload my uncle’s DNA and I don’t know any of my matches. My number one match is:

image

This is the same Z.K. who at GEDmatch matches me 103.6 cM and matches my uncle with 130 cM. Geni has those nice links on the right to View the match’s tree and ancestor report, but I don’t recognize any of the names in there.


Borland Genetics

At Borland Genetics, I have attempted to build DNA profiles for my close family, but I only have my and my uncle’s data, which doesn’t give me much to work with.

But Borland Genetics does provide DNA match information with their other users. My closest match outside my parents (as built) and my uncle is M.B.

image

As was often the case at other companies, this user provided no family tree information. Shared matches include my mother, but not my father or my uncle, so this is a maternal match.


Conclusion

From the analysis above, my and my uncle’s closest matches are people I could explore more. I mentioned DNA painting above as one way.

But the real way to go would be to send a message to each of these people and hope they respond. I haven’t done that because in my case, I don’t expect we’d  be able to connect our family trees. But like I said earlier, maybe I’ll be surprised.

25 Years Ago Today I Launched My Website - Fri, 7 Jan 2022

Happy 25th birthday to my lkessler.com website! On January 7, 1997, I added my initial content to my website for public view.

Technically, it became available August 27 the year before, but that was only a “Coming Soon” page and 2 test pages. So January 7 is the official launch date.

My first pages Included sections for My Genealogy Pages, My Family Research, Cemetery Photography Project, Beginning Genealogy, The Genealogical Institute, the Jewish Historical Society, J-GEMS, My Stars, Your Last Stop, and Behold.

So there was even then, a heavy emphasis for genealogy, a bit of family stuff, and a page for my then-in-development genealogy program Behold.

The Internet Archive has 497 snapshots of my home page between 1999 and 2021. The earliest snapshot was on Jan 25, 1999 and this is what it looked like then:

SNAGHTML2a31f0

At that time in 1999, I was thinking of writing a search program and offline browser, but that never came to fruition, and I went back to developing Behold.

My lkessler.com site doesn’t style-wise look very much different today.

Over the years, I added a lot of content.

  • I memorialized my chess program Brute Force with its own page and have a chess player for the games it played.
  • I had fun with my daughters developing fan pages for two of the TV shows they enjoyed: Mummies Alive and the New Addams Family. Having the fan sites enabled us to interview producers and actors from the shows who allowed us to print their interviews which was quite exciting. We created a webpage called SOMA (Supporters of Mummies Alive) to work with other fans of Mummies Alive who had webpages for the show, joining them in a webring.
  • I maintained a My Family Research page which has information about the families I’m genealogically interested in. Through search engines, the many surnames on that page have led hundreds of people to contact me, and many were actual relatives who I was able to exchange information with.
  • In the 2010’s, when I became a genealogy speaker, I added my speaker topics page.

I also developed several pages and continue to maintain and make available weblinks on various topics that were and are of interest to me. They include:

In 2008, I rebuilt my Genealogy Program Links page into a software review and rating site and gave it its own website:  www.gensoftreviews.com 

In 2008, I also moved my Behold pages to their own site at: www.beholdgenealogy.com

Over the 25 years, I have meticulously maintained a list of all the changes I’ve made to my websites as well as an annual summary of my activities.

It’s been a good 25 years. Hopefully I can keep this up for 25 more.

And don’t forget:  Cheryl’s very important message!

A Bit of Downtime on my Sites - Thu, 6 Jan 2022

Sometimes, website changes go smoothly.

Sometimes they don’t.

On December 28, I had a couple of rare free days, and I thought I’d finally get around to seeing if I could upgrade my sites from PHP 5.6 to PHP 7.4. The programming language PHP is what runs WordPress and does most of the automation of the webpages that transfers data to and from the MySQL databases that contain everything.

I mentioned the necessity to eventually upgrade the PHP version in my blog post from a year ago:  Averting Blog Disaster

It would be nice if I could just flip the switch and everything worked. But then, these are computer systems, and as everyone knows, nothing ever goes smoothly when it comes to computer systems.

My major use of PHP is in my Behold blog, my Behold forum and my GenSoftReviews site which use installations of WordPress on my sites.

I had two choices

1. To upgrade my versions of WordPress so that they’d be the current version that work with PHP 7.4, or

2. To fix any of the underlying PHP code that doesn’t work properly under PHP 7.4 and get it to work.

Only one of these options is truly viable for me at current time. GenSoftReviews has at its core a WordPress plugin that turns it into a rating site. To upgrade wouldn’t only mean WordPress would have to be upgraded, but it would mean that plugin would have to be upgraded as well. Unfortunately, the ratings site plugin is no longer available and I’ve already got the latest version installed on GenSoftReviews. In addition, I’m using about 12 other WordPress plugins on GenSoftReviews and/or my blog/forum, and half of them are in the same boat.

The other problem is that I custom coded my WordPress sites with all sort of nice features that I really like. If I upgraded WordPress, I would lose all those customizations. I’d have to go back and implement them all over again.

I figure upgrading and recustomizing would take me about a month. But fixing the code seemed like it would be easier. If all worked perfectly, I estimated that I’d be able to get the PHP code working in maybe a couple of days.


Step 1: Get it running in my Development Environment

On my computer, I keep a copy of my websites for my own development work. I run them locally on my computer when needed using IIS (Internet Information Services), Microsoft’s webserver.

I have installed PHP and MySQL (the database PHP uses) on my computer. I set up 3 different versions of PHP under IIS and under IIS’ PHP Manager, I can select which one I want to use.

image

The switch is instantaneous. I can select 5.3.28, press OK and open Edge and view my local site in that version of PHP. I can then select 7.4.1, press OK, switch to the site in Edge, press F5 (refresh) and *tada* it’s displaying in the new version of PHP.

This allows me to easily test old version versus new version side-by-side and ensure everything that’s working in 5.3 is also working in 7.4.

I don’t have the greatest development environment for PHP. I’m sure there are good debuggers and PHP development interfaces out there somewhere, but I’m happy enough usomg the good old technique of trackomg down where a problem is happening by adding a debug and a halt statement directly into the PHP code, i.e.:

echo “Here I am!”; exit;

If the “Here I am!” displays and it didn’t get to the problem, then I know the problem happens later in my code and I move the debug line down and try again. If the problem displays, then the “Here I am!” is after the problem and I move the debug line up and try again. I follow the path through the chain of modules that are called to discover which module and what line is causing the problem.

The first issues I encountered were some PHP commands that were either deprecated or otherwise illegal and no longer available in PHP 7.4. These included:

  • "=& new" needed to be changed to "= new"
  • "= @ =" needed to be changed to "="
  • I found two parameters of a function had the same name (both were named $deprecated) which newer PHP doesn’t allow, so I changed the second name to $deprecated2.
  • I found a few PHP opening tags (a less than sign followed by a question mark followed by “php”) without the "php" in them, which won’t work in 7.4.

Once I found those, it wasn’t too difficult to search my code to find all occurrences and fix them.

A more severe problem was that the PHP MySQL extension is now deprecated and I needed to switch it all over to MySQLi. The conversion is non-trivial, but I found and used this great page for the conversion. I then rewrote the entire wpdb.php  (WordPress database) module as well as any other occurrences of MySQL commands to use MySQLi.

This took me a couple of days to do. Once I completed, I had GenSoftReviews and my Behold blog and forum all working on my computer in my test environment.


Step 2: Copy the Changes to My Live Website

I use the program Beyond Compare to copy my local files to my live website. It can compares my local website directory to its corresponding live directory at my webhost Netfirms and shows me which files are different. I can then see the differences within each file and easily update the ones that need to be updated.

So I copied over the files. Netfirms also has an interface allowing me to change the PHP version used on my live websites:

image

They allow selection of 8 different versions. I was running PHP 5.6.  The simple selection of “7.4” changes it to that version. Like in IIS on my own machine, the change is instantaneous on my live site. I can make the change and refresh the page and see the difference right away.

But that’s not what you want to do on a live website. You really want to make the change once and have everything work from that point on. With it all seeming to work fine on my test site, I was optimistic that everything would work fine.

But I was wrong. Version 7.4 didn’t work. The sites wouldn’t display. I spent a few hours trying to debug the site live and ran into problems.

I tried to recover and set everything back to PHP 5.6 and leave it for the morning to figure out. … But disaster. GenSoftReviews displayed okay again, but my Behold blog and forum would not. I tried what I could to get them going again in 5.6 but no luck. Something I changed prevented from working again in 5.6.

So sadly I put up the following message that was to be displayed on my blog and forum for the next few days:

image

Some GenSoftReviews Fixes

I thought it best to see if I could get GenSoftReviews going first. There were a few reasons:  I thought it would be easier because GenSoftReviews is made only from WordPress, whereas my blog and forum are a much more complex combination of WordPress and bbPress. Also, I was hoping to announce the 2021 GenSoftReviews User Choice Awards in the new few days, so I needed the site running well for that. And I was hoping that any fixes I needed to make for GenSoftReviews might also apply to my blog and forum and maybe those alone would be enough to fix them, or at least get them to display.

There were quite a few things needing fixing on the GenSoftReviews site.

First, special and accented characters were being displaying incorrectly:

image

A question mark enclosed in a black diamond was being displayed instead of the correct character. The first thing I did was check the database. It is UTF8 and it did have the correct characters in it. That verified it was just a display issue.

It took me a while, but I found the solution as the top answer for this StackOverflow question: UTF-8 all the way through. My fix was to add a set_charset command prior to the selection of the mysqli database:

$this->dbh->set_charset(’utf8mb4′);
mysqli_select_db($this->dbh, $dbname);

The second problem was one not visible to users. The Wordpress admin pages which I need to maintain the GenSoftReviews site were not including the CSS (Cascading Style Sheets) for the site’s theme, so they were just being displayed to me on a blank page.

The reason why I write these sort of one-off technical blog posts is to not only help others who might be running into problems doing something similar to what I’m doing (e.g. upgrading their PHP version), but also to be a place where I can record what I did so that I can come back to recall what that was if I have to do it again in the future. I mention this because, it’s now only a few days later, and I’ve already forgotten what I did to fix the CSS problem. I did fix it however, and if I do remember, I’ll come back here and include what I did.

The third problem was when a review was posted, it was not using the user’s name he entered but was always replacing it with the default: Anonymous. I found that the WordPress filter called “pre_comment_author_name” was blanking out the name the user entered. This was happening in my test environment as well. I didn’t know why and couldn’t fix that filter, but I fixed the problem by using the “the_author” filter instead.

Along the way, I found that the ereg set of commands were deprecated and no longer worked and needed to be replaced with the preg set, i.e.:

  • ereg(‘xxx’ –——> preg_match(‘/xxx/’
  • eregi(‘xxx’ –——>preg_match(‘/xxx/i’
  • ereg_replace(‘xxx’ –——> preg_replace(‘/xxx/’

I found a few 3 parameter eregi calls. The third parameter does not have an equivalent in preg_replace, so those calls are better changed to “mb_eregi” which will do the same and is supported in PHP 7.

    This next one was a tough one. It took me a full day to track down:

    preg_replace with the “/e” option should not be used. Instead use preg_replace_callback.  I found the solution at this page: https://core.trac.wordpress.org/ticket/8689 which helpfully lists all its locations in the WordPress code and the code to replace each occurrence with. Also see: PHP – How to fix the "Warning: preg_replace(): The /e modifier is no longer supported" error in PHP7 (ryadel.com)

    The secret trick is to replace:

    preg_replace(‘#aaa#e’, “bbb”, ccc)

          with

    preg_replace_callback(‘#aaa#’, create_function(‘$match’, “return bbb”), ccc);

    These changes got the live GenSoftReviews site working well under PHP 7.4.

    Getting the Behold Blog and Forum Going Again

    First, I went through all the changes done at GenSoftReviews and did the same where applicable on my blog and forum code.

    There was still a major problem as my pages would not display and there was no error message. So I did the painstaking step-by-step tracking and after a full day of debugging, eventually found the problem was that the hostname for the database was inadvertently set to “localhost” when it should have been “lkessler.netfirmsmysql.com’”.  I’m not sure how I got “localhost” copied from my test server to my live server, but however I managed to do that, it cost me a day of my time and an extra day downtime for my blog and forum.

    Once I fixed that, my blog and forum finally appeared again. But the page would timed out and never finish. That one didn’t take me too long to track down. It was a plugin initializing, so I just commented that out for now and presto, all my blog posts were available again.

    Final Analysis

    As I write this, I’ve now got GenSoftReviews working well, and my Behold Blog and Forum at least back up and displaying all the posts. There’s still some issues left to fix in my blog and forum, such as getting that infinite-loop plugin fixed as well as a couple of other minor items such as the archive year links not working. But I can now relax and fix those in the background over the next few days.

    GenSoftReviews wasn’t down for long, maybe a few hours while I was debugging live. My blog and forum however were down for 6 days from Dec 30 to Jan 5. But now that they’re running again, a bit of downtime wasn’t the worst that could have happened.

    Sometimes you just have to tackle the problem and not give up. The result is worth it.




    Followup: Jan 15, 2022:  I still had a few more puzzles to solve to get everything working right and for a few minutes now and then, my blog or GenSoftReviews might have been down during the past week, or showing strange debug messages. The worst problem was one only on my live site that would cause the server to time out, and if I did it a dozen times in a row while testing it  occasionally bring up this nasty message:
    image

    and I’d have to wait a few minutes for the SQL server to reset itself again before I or anyone else could continue. It took me about 16 hours of debugging over 3 days to track down and fix this particular problem. Believe it or not, the final fix was to initialize an array to null prior to using it in a function call:

       $query_args = array();    <== Had to add this!!
        $query_args = wp_parse_args( $query_args );

    I may find more minor problems in the future, but this was the last of what needed fixing for now.




    Another change Apr 12, 2022: Server was timing out for a certain action in WordPress Admin. It took about 4 hours to debug, but ultimately the solution was to replace the deprecated clean_url function with esc_url which is what WordPress replaced it with.